● 特 集
~ラズパイPicoで割り込み/コア間通信/PicoSDK共存~
ゼロから作るマルチコアOS
● 別 冊 付 録
やりなおしのためのコンピュータ数学 Vol.4
★目次
◎
☆特集 ゼロから作るマルチコアOS
◎マルチコアOSを理解するためには…作ってしまおう!
●プロローグ ゼロから作るマルチコアOS「Try Kernel」の概要
☆第1部 OS作りの準備①…マルチコアを理解する
◎分類/プログラム構造/OSの方式
●第1章 マルチコア・マイコンの基礎知識
◎ハードウェア・スピンロック/インターコアFIFO/メモリ・アクセス
●第2章 RP2040マイコンのマルチコア機能
◎2コアで起床→休止を交互に繰り返してLチカ
●第3章 マルチコア・プログラムをベアメタルで実行する
●Appendix1 マルチコアOSの開発環境
☆第2部 OS作りの準備②…割り込みを理解する
◎マルチコアの制御に必須!基本動作からRP2040の割り込み機能概要まで
●第1章 割り込みの基礎知識
◎割り込みハンドラ/API/遅延ディスパッチ
●第2章 OSの割り込み管理機能と実装
◎超音波距離センサを例にμsオーダの時間計測を試す
●第3章 割り込み機能を使ってみる
☆第3部 OS作り①…ユーザがタスクを各コアに割り振る「AMP方式」
◎各コアに特定の処理を行わせる
●第1章 AMP方式「Try Kernel-A」の概要と実装
◎リセット・ハンドラ/メイン関数/初期タスクからアプリケーション・プログラム実行開始の同期まで
●第2章 OS起動処理の実装
◎機能検討から生成APIの設計,超音波距離センサを使った実験まで
●第3章 CPUコア間メッセージの実装
☆第4部 AMP方式「Try Kernel-A」で製作にトライ
◎モータとセンサをリアルタイム自作OSで制御!まずはシングルコア版で実装する
●第1章 マイコン・カーの自動走行プログラムの作成
◎タスク間通信をCPUコア間通信に置き換えてTry Kernel-Aへ移植する
●第2章 自動走行プログラムをマルチコア化する
☆第5部 OS作り②…OSがタスクを各コアに割り振る「SMP方式」
◎内部構造から割り込み管理,CPUコア間の同期通信まで
●第1章 SMP方式「Try Kernel-S」の概要と実装
◎SMP方式の要であるスケジューラ&ディスパッチャを実装する
●第2章 タスク・スケジューリングの概要と実装
◎演算能力を必要とする処理を並列実行してマルチコア化の効果を測定する
●第3章 SMP方式「Try Kernel-S」を動かしてみる
●Appendix1 組み込みにおけるSMP方式のタスク・スケジューリング
☆第6部 Pico SDKとTry Kernelの良いとこ取り
◎USB/Wi-Fi/Bluetoothや各種ライブラリとTry Kernelを共存
●第1章 Pico SDKと連携するハイブリッド・システムの構築
◎Pico SDKのネットワーク機能とTry Kernelを組み合わせる
●第2章 製作①…Wi-Fi接続センサ・ノード
◎割り込みハンドラとCPUコア間通信で操縦コマンドを伝える
●第3章 製作②…Wi-Fi経由で操作するリモート・マイコン・カー
☆特設 ゼロから学ぶOS
◎いきなりマルチコアOS はちょっと…のビギナ向け
●プロローグ 1500行OS「Try Kernel」でOSの基礎を学ぶ
☆第1部 OSとは何か,そしてどんなOSを作るのか
◎タスクの優先度や状態遷移,スケジューリングが肝
●第1章 マイコンOSの基本…リアルタイムとマルチタスク
◎最小構成だけど仕事で使えるレベル
●第2章 1500行OS「Try Kernel」の仕様を決める
☆第2部 ステップ1…起動処理
◎main関数代わりにLEDを点滅させるまで
●第1章 起動処理のプログラムを作る
☆第3部 ステップ2…マルチタスク機能
◎実行コンテキストの退避/切り替え/復元
●第1章 プログラムを切り替えるディスパッチャ
◎待ち行列/優先度スケジューリング/タスク管理ブロック
●第2章 実行すべきタスクとその順番を決めるスケジューラ
◎時間管理の単位チック・タイムと割り込みの設定
●第3章 システム・タイマとタスクの時間待ち機能
☆第4部 ステップ3…タスクの同期と通信機能
◎例えばセンサ制御とデータ処理…優先度をコントロールできる
●第1章 主に1対1のタスク同期に使われる…起床待ちと起床
◎フラグの生成/待ち/セット/クリア
●第2章 複数のタスク間で複雑な同期もできる…イベント・フラグ
◎資源の獲得と返却
●第3章 複数のタスク間での資源競合を防ぐ…セマフォによる排他制御
◎Try Kernel 2.0の新機能
●第4章 タスク間でデータ通信を行うメッセージ・バッファの実装
☆Raspberry Piライフ
◎ArmとRISC-Vの両アーキテクチャ対応!データシートからハードウェアとセキュリティの進化を読み解く
●最新ラズパイ・マイコンPico 2に搭載 RP2350レポート
◎IoTシステム構築塾〈第4回〉
●電源断対策/障害復旧/セキュリティ…ゲートウェイのセットアップと疎通確認
☆テクノロジー掘り下げ
◎エンジニア数学〈第5回〉
●音の信号処理(5)…「適応ノイズ・キャンセリング」
◎Pythonで体験カルマン・フィルタ入門〈第2回〉
●カルマン・フィルタで1次元運動を推定①
☆AI画像処理
◎画像生成AIの新機能を試す〈第2回〉
●追加学習モデルを既存モデルと並行して動かす「LoRA」 湊 雄一郎
◎ラズパイでエッジAI〈第2回〉
●PoseNet/MoveNetを使った人物姿勢推定
☆画像評価
◎ラズパイで体験!CMOSイメージセンサ性能の測定評価〈第9回〉
●PRNUその1…測定法
☆回そう!モータ
◎毎号実験!自律移動ロボット〈第10回〉
●左右のかじ取りをマイコンで自動化し目的地に向かう
☆ニュース&レポート&お知らせ
◎台風にも負けず今年も開催! 組み込み技術者向け
●ワークショップSWESTに潜入
●ほんのりInterface
◎Dojo通信〈第3回〉
●光(山口県)編
●読者プレゼント
●次号予告
☆別冊付録
●やりなおしのためのコンピュータ技術 Vol.4
特設記事は2023年7月号特集を再編集したものです
Interface(インターフェース)の内容
- 出版社:CQ出版
- 発行間隔:月刊
- 発売日:毎月25日
コンピュータ・サイエンス&テクノロジ専門誌
『Interface』は1974年に創刊されて以来,コンピュータ技術にこだわる専門誌として先進的かつ専門的な技術情報を読者の方々に提供し続けています.愛読者の方からは,「後で必ず役に立つので毎号買っておくことにしている」という嬉しい評判をいただいています.本誌が扱う分野は,マイコン,メモリ,インターフェース,ネットワーク,ストレージ,プログラミング,OS,ファームウェア,デバイス・ドライバ,ディジタル信号処理,計測・制御,画像/音声処理,データベースなど,多岐にわたります.本誌は,コンピュータや組み込みシステムの開発にかかわるすべての技術者,研究者,学生,アマチュアの方にとって必携の雑誌であると自負していますし,またそうであり続けるよう心がけています.ぜひとも本誌を机の上に置いていただき,また本棚に本誌を揃えていただければと願っています.
Interface(インターフェース)の目次配信サービス
Interface(インターフェース)最新号の情報がメルマガで届く♪ メールアドレスを入力して登録(解除)ボタンを押してください。
※登録は無料です
※登録・解除は、各雑誌の商品ページからお願いします。/~\Fujisan.co.jpで既に定期購読をなさっているお客様は、マイページからも登録・解除及び宛先メールアドレスの変更手続きが可能です。
※登録は無料です
※登録・解除は、各雑誌の商品ページからお願いします。/~\Fujisan.co.jpで既に定期購読をなさっているお客様は、マイページからも登録・解除及び宛先メールアドレスの変更手続きが可能です。
以下のプライバシーポリシーに同意の上、登録して下さい。
おすすめの購読プラン
この雑誌の読者はこちらの雑誌も買っています!
Interface(インターフェース)の所属カテゴリ一覧
Fujisanとは?
日本最大級雑誌の定期購読サービスを提供
デジタル雑誌をご利用なら
最新号〜バックナンバーまで7000冊以上の雑誌
(電子書籍)が無料で読み放題!
タダ読みサービスを楽しもう!