New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
10.2 節をリプレースする #78
Comments
Slackでの議論転載: |
『Goなら...』において「libcの関数を叩こう」という趣旨の箇所は(PDF検索が正しければ)なさそうでした。 となると「このリポジトリにおいて、システムコールのラッパーとしてlibcクレートを使うか」については否定派です。 システムコールのラッパーとして nix クレートを使うのはありだと思います。 以上をもって、
に対しては「nix を使う」を私からはおすすめします。 |
一方で自分は学習用途として、 (Linux ABI, x86-64 を前提として) アセンブリでシステムコールを呼び出すコード(ある意味でGoの 共通見解としては前のコメントのとおりとして、10.2の別解として nix も libc も使わないやつを提出しようと思います。 |
Goの |
おっしゃるとおりですね。
ここで意図したのは「 libcクレート(のシステムコールのサブセット部分)よりもnixクレートを好むのは
という理由です。 |
了解です。 |
9.2.x で goの os.Chmod(), os.Chown() によるファイルのpermission変更の例が出てくるのですが、 |
|
基本線は
そうですね。私も使っててないやつをいくつか見つけた記憶があります。ラップする関数を作ったら大丈夫だと思います。 |
(あまり貢献できていない者からの意見ですみませんが)大変納得感がありました。 |
節タイトル
ファイルのロック
対象コード
https://github.com/yurakawa/learn-system-programming-with-go/tree/master/ch10/s2-1
補足説明
Go の syscall をどう Rust 向けに変換していくかを現在議論中です。
The text was updated successfully, but these errors were encountered: