コミックマーケット96(C96)で「マルチコア本」出します!
次の夏コミ(C96)の4日目(8/12(月))に「へにゃぺんて」でブース出展します!
配置は「南リ18b」で、2019年7月1日に開業されたばかりの「南展示棟」です!(公式の開業お知らせ[PDF])
エリアとしては4Fにある「南3」です。正門というのか逆三角形の会議棟からは西展示棟を通り抜けた先にあります。
詳しくは上記PDFか↓のねとらぼの記事が分かりやすいです。
新刊は「x86_64自作OS」シリーズの「パート5」で、「てっとりばやくマルチコア」です。
UEFIの機能を直接呼び出すことでブートローダーでのマルチコア対応を実現するこちらの記事の書き直し(第1章)と、
ブートローダー後(UEFIを抜けた後)のカーネル・アプリでのマルチコア対応方法の紹介(第2章)の2章の構成です。
内容としては、「システムコールを通じて任意のアプリを指定されたコアで動かす」までをてっとりばやく実現します。
特定の技術要素に閉じた内容になっていますので、本シリーズに限らず、x86向けに独自の自作OSをしている方にも参考になるかと思います。
目次
- はじめに
- 本書の構成
- 開発環境・動作確認環境
- 本書の PDF 版 /HTML 版やソースコードの公開場所について
- 第 1 章 ブートローダーを変更し各 AP をカーネルへジャンプさせる
- 第 2 章 カーネル側で AP を制御する
- 2.1 ジャンプしてきた AP を認識する
- 2.2 初期化前のコンソールへのアクセスを防ぐ
- 2.2.1 AP はコンソールの初期化を待つようにする
- 2.2.2 動作確認
- 2.3 spin lock を追加する
- 2.3.1 ロックとスピンロック
- 2.3.2 スピンロックを実装してみる
- 2.3.3 スピンロックを使ってみる
- 2.3.4 動作確認
- 2.4 AP に外部アプリを実行させる
- 2.4.1 AP の初期化処理 (ap_init()) を追加する
- 2.4.2 AP の外部アプリ実行 (ap_run()) を追加する
- 2.4.3 AP へ外部アプリを実行させる
- 2.4.4 動作確認
- 2.5 AP での外部アプリ実行をシステムコール化する
- おわりに
- 参考情報
- 元ネタ
- 参考にさせてもらった情報
- 開発リポジトリ
- 本シリーズの過去の著作