Qiita Careers powered by IndeedPR

求人サイト「Qiita Careers powered by Indeed」では、エンジニアのあなたにマッチした求人が見つかります。

246
175

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

UNIX/Linux互換OSをゼロから作った話

246
Last updated at Posted at 2015-12-18

こんにちはredcap97です。

私は、UNIX互換OSをゼロから作っています。
ある程度動くようになったので紹介したいと思います。

デモ

Screen Capture

現在、QEMUの上で動作するようになっています。CPUはx86ではなくARMを対象に作っています。シェルと基本的なコマンドが動作するようになっていて、リダイレクトやパイプも利用できます。

Dockerを使うと簡単にOSを動かすことができます。

docker run -it --rm redcap97/cyanurus

概要

  • 33のシステムコールを実装している
  • システムコールはLinuxと互換性がある
  • シェルはDashが利用できる
  • Coreutilsのコマンドが使える
  • libcはmusl libcを使用している
  • ファイルシステムはMinix File Systemを実装している

以上です。

私は実装がとても遅いので、ここまで作るのに2年ぐらいかかっています。
Linusの偉大さを肌で感じなら、これからもノロノロと作っていきたいと思っています。

246
175
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Linked from these articles

Comments

すばらしい!これこそ真のフルスクラッチ。

しかしなぜ自分で作ろうと思ったんですか? 興味深いです。

1
redcap97
@redcap97

@richmikan@github

自作OSに興味を持ったのはKozosがきっかけですね。
一通り写経してから自分でも作りたくなりました。

UNIX互換を目指し始めたきっかけは正直あまり覚えてないのですが、おそらくユーザランドでmusl libcのprintfが動くようなってからですね。
このまま実装していけばシェルとか動かせるようになるかもと思いまして。

3
NewGyu
@NewGyu

この本を思い出しました。そして自分は挫折しました。

dockerでイメージ配布がモダンな感じでいいですね。

0

Let's comment your feelings that are more than good

Being held Article posting campaign

2025年、生成AIを使ってみてどうだった?

2026-01-19 ~ 2026-02-27

View details
246
175

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Login to continue?

Login or Sign up with social account

Login or Sign up with your email address