作家・デザイナー。以前の名は「わたしの名はフレイ」でした。

CPU・メモリ・カーネル

ハードウェア

CPU・メモリというコア装置が計算をしていて、そこに情報が入出力される コンピュータは計算とメモリ どこまでをプログラムの内部に書き、どこからを外部に出す(実行時に決める)か コンパイラを上手く使うこと OSとカーネル コンピュータは二進数の計算以…

コンピュータ方式の歴史

リレー 真空管 トランジスタ IC マイクロコンピュータ LSIと将来のコンピュータ ミニコンとは ホビーパソコンとは 各社の動き ワープロ 家庭用ゲーム機 リレー リレーを使ったコンピュータは、金属片が電磁力によって移動することで、電流の流れ方をスイッチ…

OSとは

オペレーターとオペレーティングシステム カーネル ハードウェアの差異の吸収 複数のプログラムの同時実行 ネットワークやファイルシステムレベルの簡単なインターフェースからの機能の提供 人間とコンピュータの接するインターフェースの提供 サーバーやデ…

BSD

カルフォルニア大学バークレー校によるBSD 大学やサーバの標準 Linuxと比べると、効率よりも安定している FreeBSDの特徴 csh/tcsh 独自の起動・終了の設計 portsとmake world jail ZFS NetBSDの特徴 移植性の高いコードを書くことは、OSの設計を綺麗にする O…

UNIX

AT&T UNIX C言語で書かれたOS パブリックドメイン ネットワークへの親和性が高い 優れたコマンドライン環境 マルチタスク・マルチユーザ 安定したインフラ基盤 「ファイル」という考え方 オープンソースはUNIXの本流 UNIXはOSの本家本元 コンピュータはネッ…

GNUツールチェイン

フロントエンドとバックエンド macOS/Windows版 クロスコンパイラ LLVM/Clang Binutils (as, ldなど) gettext 持論:コンパイラはフリーでなければならない Make Autoconfで移植性を高める Automakeで楽にMakefileを作る フロントエンドとバックエンド GCCは…

コンパイラ

コンパイラ・インタプリタ プログラムとライブラリ /binと/lib /etc/ld.so.confとldconfig GCC GNU make Autotools 国際化・地域化 テキストとバイナリ コンパイラ・インタプリタ コンパイラとは、プログラミング言語で書かれたソースコードを機械語に翻訳す…

カーネルやコンパイラをどうしたら短く書けるか

抽象ステートメント Rubyの機能をカーネルに使えないか ウィンドウシステムもデスクトップ環境もブラウザもオフィスも全部短く書く データとステートメントは本来まったく違うもの あるべきはイベントである データの中に手続きを書くのは気持ちが悪い しか…

英語を学びたい

英語を学びたい 単語帳よりも生の英語を解読しよう 取引コスト 英語を学びたい 僕は、英語を学びたい。 たとえば、Linuxカーネルの開発がしたいなら、 Linux Kernel Newbiesというとてもいいサイトがある。 公式のKernel.orgでは分からない、 最新カーネルの…

Linuxカーネル

Linuxカーネル マルチタスク LinuxはマルチタスクのOS プロセスとスレッド コンテキスト切り替え プロセスディスクリプタ 仮想アドレス空間 ページアドレッシング アドレス空間の構造 割り込み デバイスドライバ ファイルシステム コピーオンライトとスナッ…