背景 最近、前職の友達や後輩、またその後輩の会社の方々などで「Linuxカーネル勉強会」なるものをはじめました。勉強会といっても読書会に近く、「Linuxカーネル解読室」という本を使っての勉強会で、この前早速第1回があり、第1章の「プロセススケジューリング」について行いました。 みんなで議論などをして、書かれてることは大体理解できましたが、やはり前提知識がたくさん必要などの理由から不明な所が何点かあったので、その一つについて調べてみました。 (以降の説明はlinux kernel 2.6.15(x86)を元にしています。) わからなかった事 そのわからなかった事について説明します。 以下は、Linuxカーネルが行うコンテキススイッチの部分の核となるswitch_to というマクロです。 include/asm-i386/system.h #define switch_to(prev,n