RISC-V OSを作ろう (12) ~ KVM上で動かそう

連載「RISC-V OSを作ろう」で作ってきたOS(Sophia OS)を、Linux KVM上のゲストOSとして動かしてみましょう!

ローカルLLMとRAGで自分の外部記憶を強化しよう (2)

NVLINK Bridgeで接続した2台のRTX6000 GPUをFalcon 4205 を介して2台の1Uサーバから接続して LLM + RAG を動作させる実験です。

OS徒然草 (4)

今回はCPUの効率的な活用を目指す「マルチプロセス」や「スケジューリング」にまつわるお話です。

RISC-V ハイパーバイザーを作ろう (1) ~ 概要編

「RISC-V OSを作ろう」の番外編スタートです! RISC-V のハイパーバイザー拡張機能 (Hypervisor Extension) を使って、実際に動作する小さなハイパーバイザーを実装し、動かしてみましょう。

新Linuxカーネル解読室 - netfilterにおける排他制御

本稿では、Linuxの排他制御の仕組みである読み書きスピンロック(RWロック)とRCUについて、netfilterにおける排他制御を具体例として、実際にLinuxでどのように使われているのかを解説します。

RISC-V OSを作ろう (11) ~ SBI対応

これまでの連載では、ベアメタル上で直接RISC-V OSを動かす仕組みを解説してきました。今回は、RISC-V OSをモニタプログラムOpenSBIの上で動作させる方法を見ていきます。RISC-V OSはスーパーバイザーモードでの動作となります。

OS徒然草 (3)

今回は仮想空間を巡るお話です。仮想空間というものは、OSを語る上で外せないものですので、本稿が仮想空間を理解するための助けになれば幸いです。

RISC-V OSを作ろう (10) ~ マルチコア (タスクスケジューリング)

前回はRISC-V OSがマルコチアOSとして立ち上がるところを解説しました。 今回は、RISC-V OSがマルチコアを意識したタスクスケジューリングを行なう仕組みを見ていきます。

RISC-V OSを作ろう (9) ~ マルチコア (OSの起動)

前回までは、シングルコア環境を前提にしたOS実装を見てきましたが、今回からRISC-V OSをマルチコア環境に対応させます。コアが複数になると、複数のコアが同時にひとつのデータ構造を操作しようとすることがあります。OSは複数コアから同時操作が行われても…

OS徒然草 (2)

OSの開発をしていると、必然的にシステムコールを使用したプログラムを作成することになります。誰しも始めたての頃は、fork(2)システムコールを不思議に思うのではないかと思います。 forkの復帰値が親と子で違っていて、それで自分が親か子かを区別できる…