URLをKeyboardで打ち込んだとき、Keyboardから押下されたKeyの電気信号が
KeyboardのDevice Driverを通して、Kernelに伝えられます。
Kernelはカーソルがある位置をもとにどのApplicationにKeyboardからの
入力信号を伝えるべきかを判定し、BrowserにKeyboardからの入力信号を
伝えます。
Applicationは、Keyboardからの入力信号を受け取り、入力されたURL文字列を
画面に表示することにします。画面に表示する文字列を画面表示を行う
Application(or Kernel)に伝えます。
画面表示を行うApplication(or Kernel)は、Kernel→Device Driver経由で
画面にURLを表示します。
Browserは、URLを解析しNetwork越しに接続するhost、portを決定しKernelに
これからNetwork越しの通信を行うことを伝えます。
Kernelは、Network接続の準備を行います。準備が終わったらその旨を
Applicationに伝えます。
Browserは、KernelにNetwork越しの通信路を確保することを要求します。
Kernelは、Device Driverを通してModemやNICを操り、Network越しに通信路を
確保し、その状態をApplicationに報告します。
Browserは、Kernelにコンテンツを取得するための通信文を渡します。
Kernelは、Device Driverを通してModemやNICを操り通信文を送信します。
送信が一段落したら、その旨をApplicationに伝えます。
そうこうしていると、Serverからコンテンツが送られてきます。
コンテンツを受信したModemやNICは、その旨をKernelに伝えます。
Kernelは、Device Driver越しにModemやNICが受け取ったコンテンツを
受け取ります。その後、受け取ったportを元にコンテンツを受信するべき
Applicationを決定し、Browserにコンテンツが届いたことを知らせます。
コンテンツが届いたことを知ったBrowserは、Kernelに届いたコンテンツを
渡すように要求します。
Kernelは、要求されたコンテンツをApplicationに渡します。
Browserは受け取ったコンテンツを解析し、画面のどの位置になにを
出力するかを決定します。決定した情報を画面表示を行うApplication or
Kernelに託します。