概要 スレッドといえば,pthreadなど,言語やライブラリが提供しているものを使うのが定石だが,自作できるかもしれないことを発見したので実際にやってみた,という話.ここで作るスレッドは,1つのプロセスで実行される.現実的なソフトウェア開発で利用しないけれど,例えば組み込みシステムでスレッドを実装するとか,ある程度までPCで動作を確認したいときとかには使えるかもしれない. 環境 OS MacOSX 10.12.6 アセンブリ言語 nasm 2.14.02(home brewでインストール) 以前の記事は,実はこの実装のための実験だった. 完成イメージ void secondt() { printf("Second Thread\n"); int count = 0; for (int i = 0; i < 3; ++i, ++count) { printf("second [%d]\n",