29. ユタ・ティーポット、Cコンパイラ開発の授業、中学生時代のOS自作エピソード (hikalium)

Turing Complete FM
Turing Complete FM
Episode • Aug 1, 2018 • 1h 42m
セキュキャンのCコンパイラ作成コースの話、CGでよくでてくるティーポットの実物を入手した話、hikaliumの中学生時代のOS自作の話をしました。

出演者: hikalium (@hikalium)、Rui Ueyama (@rui314)

https://turingcomplete.fm/29

ハッシュタグは#tcfmです。

TCFMはサポーターの投げ銭によって収益を上げています。このコンテンツに課金してもいいよという方はぜひクリエイター支援サイトPatreonから登録してご協力ください。

  • イントロ (0:00)
  • セキュキャン事前学習始まりました (1:33)
  • 「低レイヤを知りたい人のためのCコンパイラ作成入門」(仮題)、現在7万字 (3:58)
  • Cの不可解な言語仕様のルーツを知るために1972年の最初期のCコンパイラのコードを読んでみた (6:07)
  • 符号拡張とマイナス2進数 (13:04)
  • コース参加者のコードのほうが8ccのコードよりきれい (17:57)
  • 一番最初のコンパイラは構文解析が非常に苦労した (20:23)
  • CGでよくでてくる例のティーポットを買いました (22:07)
  • 元々はボストンのコンピュータ博物館で展示されていた (25:15)
  • Frieslandという会社が今でも同じティーポットを作っている (26:03)
  • ユタ・ティーポットはなにがCGに適しているのか (28:27)
  • ユタ・ティーポットと南部鉄器の類似性 (30:31)
  • 内輪ネタとしてのユタ・ティーポット (33:14)
  • ユタ大学のUtah Teapot Rendering Competition (34:00)
  • 画像処理の標準テストイメージとしてよく使われる女の人Lennaの話 (37:57)
  • ユタ・ティーポットは日本からも普通に買えるはず (41:47)
  • hikaliumのOS自作入門 (43:28)
  • hikaliumの小学生時代のホームページ (44:21)
  • 30日OS自作入門本のOSのファイルシステム (48:00)
  • GUIの多色対応 (51:36)
  • 30日OS自作入門本のmalloc (55:29)
  • K&R mallocを自力で発明して実装 (58:10)
  • テキストボックスを実装 (1:00:33)
  • ARMの実行のみできるページ(読めない)という新しい機能 (1:03:17)
  • x86のページテーブルがいつの間にか5段くらいに深くなっている件 (1:06:32)
  • lldでEFIバイナリのブートローダを簡単に作成 (1:08:01)
  • lldはクロスのビルドを簡単にするつもりで作っている (1:09:48)
  • hikaliumのOS次回作のテーマ (1:12:07)
  • Window Systemでウィンドウを入れ子にする (1:15:04)
  • クリックした場所を検出しようとすると必ずマウスカーソル自身になる問題の回避法 (1:18:58)
  • MIDIファイルを読んでPCのビープ音で再生する機能を実装 (1:20:48)
  • 無理やりなコードでも動くものを一回書くと学べることが多い (1:25:00)
  • Intelのマニュアルを読んで16ビットモードのエミュレータの作成を試みる (1:26:42)
  • 中学生の夏休みの頃はひたすらコードを書いていたりしていた (1:31:38)
  • エディタはWindowsのメモ帳だった (1:32:18)
  • いまからみると稚拙なコードを書いていた中学生時代 (1:37:50)
  • エンディング (1:39:57)