「Linuxの書籍」の版間の差分
ナビゲーションに移動
検索に移動
(→初級者) |
(→上級者) |
||
101行目: | 101行目: | ||
|} | |} | ||
<br> | <br> | ||
特に、"Linux Kernel Programming"を読むことを推奨する。<br> | |||
{| class="wikitable" | style="background-color:#fefefe;" | {| class="wikitable" | style="background-color:#fefefe;" | ||
|- | |- | ||
109行目: | 109行目: | ||
| style="width: 50%" | <center><html><a href="https://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB-%E7%AC%AC3%E7%89%88-Daniel-Bovet/dp/487311313X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=20ICSPTOIQKMB&keywords=%E8%A7%A3+linux+%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88&qid=1669094097&qu=eyJxc2MiOiIwLjY0IiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=%E8%A7%A3+linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88%2Caps%2C152&sr=8-1&linkCode=li2&tag=presire22-22&linkId=f8b3d6401b46afafe2b185ff0cae1939&language=ja_JP&ref_=as_li_ss_il" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/81IRxAcWOKL._SL1500_.jpg" /></a></html><br>[https://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB-%E7%AC%AC3%E7%89%88-Daniel-Bovet/dp/487311313X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=20ICSPTOIQKMB&keywords=%E8%A7%A3+linux+%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88&qid=1669094097&qu=eyJxc2MiOiIwLjY0IiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=%E8%A7%A3+linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88%2Caps%2C152&sr=8-1&linkCode=ll1&tag=presire22-22&linkId=199db4ef8f218ed0f07cb14f66bd1a97&language=ja_JP&ref_=as_li_ss_tl 詳解 Linuxカーネル 第3版]</center> | | style="width: 50%" | <center><html><a href="https://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB-%E7%AC%AC3%E7%89%88-Daniel-Bovet/dp/487311313X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=20ICSPTOIQKMB&keywords=%E8%A7%A3+linux+%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88&qid=1669094097&qu=eyJxc2MiOiIwLjY0IiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=%E8%A7%A3+linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88%2Caps%2C152&sr=8-1&linkCode=li2&tag=presire22-22&linkId=f8b3d6401b46afafe2b185ff0cae1939&language=ja_JP&ref_=as_li_ss_il" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/81IRxAcWOKL._SL1500_.jpg" /></a></html><br>[https://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB-%E7%AC%AC3%E7%89%88-Daniel-Bovet/dp/487311313X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=20ICSPTOIQKMB&keywords=%E8%A7%A3+linux+%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88&qid=1669094097&qu=eyJxc2MiOiIwLjY0IiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=%E8%A7%A3+linux%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB+%E7%AC%AC3%E7%89%88%2Caps%2C152&sr=8-1&linkCode=ll1&tag=presire22-22&linkId=199db4ef8f218ed0f07cb14f66bd1a97&language=ja_JP&ref_=as_li_ss_tl 詳解 Linuxカーネル 第3版]</center> | ||
|- style="text-align: center;" | |- style="text-align: center;" | ||
| style="width: 50%" | <center><html><a href="https://www.amazon.co.jp/Linux-Kernel- | | style="width: 50%" | <center><html><a href="https://www.amazon.co.jp/Linux-Kernel-Programming-practical-synchronization-ebook/dp/B0BD8S1F8B?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=1KRB8AMVR2YWF&keywords=Linux+Kernel+Debugging&qid=1704979005&sprefix=linux+kernel+debugging%2Caps%2C170&sr=8-8&linkCode=ll1&tag=presire22-22&linkId=f1b6e1e8eccc99134510c213abd81289&language=ja_JP&ref_=as_li_ss_tl" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/81dWNNU40LL._SL1500_.jpg" /></a></html><br>[https://www.amazon.co.jp/Linux-Kernel-Programming-practical-synchronization-ebook/dp/B0BD8S1F8B?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=1KRB8AMVR2YWF&keywords=Linux+Kernel+Debugging&qid=1704979005&sprefix=linux+kernel+debugging%2Caps%2C170&sr=8-8&linkCode=ll1&tag=presire22-22&linkId=f1b6e1e8eccc99134510c213abd81289&language=ja_JP&ref_=as_li_ss_tl Linuxカーネルプログラミング<br>カーネル内部、カーネルモジュールの書き方、カーネル同期の包括的ガイド 第1巻]</center> | ||
| style="width: 25%" | <center><html><a href="https://www.amazon.co.jp/Linux-Kernel-Programming-Part-Synchronization/dp/180107951X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=2Z8EOJV9OE9MA&keywords=Linux+Kernel+Programming%3A+A+comprehensive+guide+to+kernel+internals%2C+writing+kernel+modules%2C+and+kernel+synchronization&qid=1669093968&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=linux+kernel+programming+a+comprehensive+guide+to+kernel+internals+writing+kernel+modules+and+kernel+synchronization%2Caps%2C162&sr=8-3&linkCode=li2&tag=presire22-22&linkId=ce44a571976999cab37b347121632e46&language=ja_JP&ref_=as_li_ss_il" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/61qxqkww4rL._SL1360_.jpg" /></a></html><br>[https://www.amazon.co.jp/Linux-Kernel-Programming-Part-Synchronization/dp/180107951X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=2Z8EOJV9OE9MA&keywords=Linux+Kernel+Programming%3A+A+comprehensive+guide+to+kernel+internals%2C+writing+kernel+modules%2C+and+kernel+synchronization&qid=1669093968&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=linux+kernel+programming+a+comprehensive+guide+to+kernel+internals+writing+kernel+modules+and+kernel+synchronization%2Caps%2C162&sr=8-3&linkCode=ll1&tag=presire22-22&linkId=908009ce8f14e845902604a1b29db8f9&language=ja_JP&ref_=as_li_ss_tl Linuxカーネルプログラミング<br>カーネル内部、カーネルモジュールの書き方、カーネル同期の包括的ガイド 第2巻]</center> | | style="width: 25%" | <center><html><a href="https://www.amazon.co.jp/Linux-Kernel-Programming-Part-Synchronization/dp/180107951X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=2Z8EOJV9OE9MA&keywords=Linux+Kernel+Programming%3A+A+comprehensive+guide+to+kernel+internals%2C+writing+kernel+modules%2C+and+kernel+synchronization&qid=1669093968&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=linux+kernel+programming+a+comprehensive+guide+to+kernel+internals+writing+kernel+modules+and+kernel+synchronization%2Caps%2C162&sr=8-3&linkCode=li2&tag=presire22-22&linkId=ce44a571976999cab37b347121632e46&language=ja_JP&ref_=as_li_ss_il" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/61qxqkww4rL._SL1360_.jpg" /></a></html><br>[https://www.amazon.co.jp/Linux-Kernel-Programming-Part-Synchronization/dp/180107951X?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=2Z8EOJV9OE9MA&keywords=Linux+Kernel+Programming%3A+A+comprehensive+guide+to+kernel+internals%2C+writing+kernel+modules%2C+and+kernel+synchronization&qid=1669093968&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=linux+kernel+programming+a+comprehensive+guide+to+kernel+internals+writing+kernel+modules+and+kernel+synchronization%2Caps%2C162&sr=8-3&linkCode=ll1&tag=presire22-22&linkId=908009ce8f14e845902604a1b29db8f9&language=ja_JP&ref_=as_li_ss_tl Linuxカーネルプログラミング<br>カーネル内部、カーネルモジュールの書き方、カーネル同期の包括的ガイド 第2巻]</center> | ||
|- style="text-align: center;" | |- style="text-align: center;" |
2024年1月11日 (木) 22:21時点における版
概要
ここでは、Linuxを学習する上で推奨される書籍を記載する。
初級者
初めてLinuxを使用する人は、以下の2冊がお薦めである。
初心者でも挫折することなく学べるはずである。
参考書 | |
---|---|
新しいLinuxの教科書 |
入門UNIXシェルプログラミング |
コマンドラインとシェルを学習した後は、システムプログラミングの学習を行う。
特に、"Unix/Linux理論と実践"は、理解しやすい図が豊富にある。また、OSの入門書としても優れている。
参考書 | |
---|---|
ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道 |
Unix/Linuxプログラミング理論と実践 |
中級者
網羅性が高く、分厚い書籍である。
ある程度、前提知識が必要なので、難しいと感じる場合は、まず"Unix/Linux理論と実践"を読む。
参考書 | |
---|---|
詳解UNIXプログラミング 第3版 |
Linuxプログラミングインタフェース |
以下は、ネットワークプログラミングの名著である。
ネットワークプログラミングに興味がある場合、まずネットワークの基本的な知識を学習した後、以下の書籍を読む。
参考書 |
---|
UNIXネットワーク・ベストプログラミング入門 |
Linuxのシステム管理を行う場合は、以下の書籍を読む。
参考書 | |
---|---|
Linuxシステム管理 |
また、以下の書籍はリファレンスとして使用する。
参考書 | |
---|---|
UNIXシステム管理 第3版 volume.1 |
UNIXシステム管理 第3版 volume.2 |
Linuxでネットワーク管理を行う場合は、以下の書籍を読む。
この書籍はページ数が少ないので読みやすい。
参考書 | |
---|---|
Linuxネットワーク管理 第3版 |
また、併せて以下の書籍も読む。
参考書 | |
---|---|
TCP/IPネットワーク管理 |
上級者
まず、以下の書籍を読む。OSの教科書としても使用できる。
参考書 |
---|
UNIXカーネルの設計 |
アルゴリズムを理解するには、以下の書籍が最適である。
ページ数が少なく読みやすい。
ただし、ある程度のプログラミングの知識は必要である。
参考書 |
---|
はじめてのOSコードリーディング |
特に、"Linux Kernel Programming"を読むことを推奨する。