
CERT-Cコーディングスタンダードを読んでおりますが、システムコールなどのOSに近い処理については、大学でも学んでこなかったため、一度、書籍を使って学びたいと考えています。
https://www.jpcert.or.jp/sc-rules/
・シグナル、環境、並行性、POSIXあたりが読んでいて知識がないと感じています。
上記を満たす書籍としては、「例解UNIX/Linuxプログラミング教室: システムコールを使いこなすための12講」などが対象かと思うのですが、知識がないため、自身に足りない部分がカバーできているのかわからず、学びやすく、必要な知識がカバーできる書籍をおすすめいただきたく、投稿させていただきました。お手数ですが、よろしくお願いいたします。
なお、大学時代に柴田 望洋 著の明解C言語入門編、実践編で一通りの基礎となるC言語仕様は理解しております。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
あー、ごめん。
本屋で確認したら「C実践プログラミング 第3版」ってのはANSI C/ISO C89/ISO C90で書かれた本だったわ。
っつー事はデファクトスタンダードのC99でのコーディングスタイルは反映してねぇな。int main() { ... } とか書いてっし。
っつーことはC99に対してはリファレンスマニュアルとしての
S・P・ハ-ビソン3世とG・L・スティ-ル・ジュニアのCリファレンスニュアル:
https://www.amazon.co.jp/OD-S%E3%83%BBP%E3%83%BB …
しか発売されてない、って事になり、少なくとも「ワールド・デファクトスタンダード」としてのC言語を学べる媒体は「日本国内には丸っきり存在せん」って意味になるね。
不正確な情報を掲げてゴメン。
(考えてみれば1998年出版で第3版以降改訂無し、って情報を掬い上げるべきだった・・・・・・orz)
そうなると、#3氏が挙げてるような、「Cの本」と言うよか「UNIXの本」とか「Linuxの本」とか買った方がベターだ、って話になるんだけど、オライリーでさえそのテのシステムプログラミングやカーネル解説書なんかでもLinux2.6だったりするんだよね。
現行のLinuxは5.0越えてるしさ。
なかなかこの辺の情報を纏めて解説した本って無いよなぁ。
ギブアップだ。
足を運んで書籍を確認して頂いてありがとうございます。
どこかで割り切って書籍を選択するしかなさそうだと感じましたので、皆さんのご回答を参考に選んでみたいと思います。
No.3
- 回答日時:
「CERT-Cコーディングスタンダード」は知りません。
Unix関係の書籍を本棚で探すと以下のようなものがありました。
が、どれだけ役に立つかわかりません。
・UNIXワークステーションⅠ<基礎技術編>/アスキー出版局
・アドバンスドUNIX-シェルとCによるプログラミング/オーム社
・プロフェッショナルUNIX/アスキー出版局
・UNIXネットワークプログラミング/プレンティスホール
GNU Cライブラリであれば、ソースコードが読めると思うので、そういうのを参考にしてもいいのかも?
本棚を確認頂きありがとうございました。
ご提案頂いたものなど、本屋で試し読みしながら、どれが良さそうか見て、考えたいと思います。
No.2
- 回答日時:
分からん。
良く分からんのだけど、多分Cの定番書籍として有名なのは次の本と違うんかな?
C実践プログラミング 第3版:
https://www.amazon.co.jp/C%E5%AE%9F%E8%B7%B5%E3% …
> 大学時代に柴田 望洋 著の明解C言語入門編、実践編で一通りの基礎となるC言語仕様は理解しております。
多分理解していない(笑)。
いや、貴方の責任がどーの、って話じゃなくって、少なくとも日本で出版されてる「C言語入門」の類だと、著者陣がそもそも「C言語とは何ぞや」をほぼ理解していない。
平たく言うと、「C言語の仕様」を知らないんだ。
日本ではC言語の仕様はJISで制定されていて、それはISOで過去制定されたC99の事なんだ(つまり、JIS C言語と現行の国際規格でのC言語は一致していない)。
一方、書籍類で解説されている「C言語」とやらはほぼANSI Cと言う「古代の」規格に則って書かれてるんだよね。ISOで言うとC90って言う「死んだ規格」だ。
ワールド・デファクトスタンダードだと、CはほぼC99の事だ(最新規格のC17を使ってる人は、確かにほぼ見かけないが)。一方、日本だとC90で書いてる人が多く、結果書籍はJIS Cでさえ反映されていない、と言う、ある意味「最悪の状態」が続いてる。
よって、まずはJIS Cの規格を最低でも学ぼう。一応Web検索ではJIS Cの仕様は閲覧可能とはなっている。
JIS X3010-2003 プログラム言語C:
https://kikakurui.com/x3/X3010-2003-01.html
あるいは、リファレンスマニュアルを購入するのもいい事だと思う。
S・P・ハ-ビソン3世とG・L・スティ-ル・ジュニアのCリファレンスニュアル:
https://www.amazon.co.jp/OD-S%E3%83%BBP%E3%83%BB …
ここに挙げた本2冊はC99ベースで記述されている(1冊目は多分、2冊目は確実)んで、JIS Cに則ったコードを書ける筈だ。
いずれにせよ、まずはJIS規格でのCを「学び直す」べきとちゃうんかな。
多分。
No.1
- 回答日時:
「こういうことを勉強しよう」という際はもう少し具体的に勉強したい事の項目を洗い出されるとよいように思います。
そですねぇ・・・例えば“OS側からの割り込み”を受けるにはどういう作りをしたらいいとか、“スレッド間での同期”をとるにはどうしたらよいとか、“プロ間の通信”とか、そういう具体的なプログラムの機能の作り方に目を向けるとよいように思います。
単にソフトウェアの製造に使用するプログラミング言語の仕様から見ているのではプログラムの設計・製造のスキルは身に付かないと考えます。
参考まで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングを初めたい
-
プロゲートを終えて絶望してい...
-
医者がゲームプログラミングっ...
-
プログラミングに必要な数学や...
-
「やさしいC」の次に読む本を探...
-
C言語、C+、C++、C#の違い
-
プログラムに書かれる"%"記号の...
-
アセンブリ名とは??
-
COBOLでのNOT = の AND条件
-
VCとVC++
-
ノートPCについて 大学・専門へ...
-
exeファイルを作ったり改造した...
-
宣言の構文エラーが出ます。
-
リピート再生が出来ません
-
COBOLで文字タイプを数字...
-
PLC 命令
-
CSVデータの"(ダブルクォーテ...
-
Cプログラミングでハングマンゲ...
-
HOLONついて教えてください。
-
UNITY Float型の接尾辞fって
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語プログラミングについての...
-
中村勇吾さんみたいな
-
PixivとかDMM(FANZA)みたいなサ...
-
プログラミングの勉強方法
-
これを作るための言語って何で...
-
夢 ~dream~(中一です)
-
学部選択
-
プログラムをホームページで見...
-
将棋ができるサイトをつくりたい。
-
初心者です。YouTubeを連続で再...
-
プログラミングの専門学校について
-
ケータイのアプリを作ろうと思...
-
Fortranを超基礎から独学で勉強...
-
エクセルVBAが分かる方へ
-
苦労
-
実践的なC言語の知識
-
50代です、プログラミングを...
-
「やさしいC」の次に読む本を探...
-
iアプリを作りたいと思うのです...
-
プロゲートを終えて絶望してい...
おすすめ情報