タグ

OSに関するNyohoのブックマーク (31)

  • 1,000行で作るオペレーティングシステム

    「Writing an OS in 1,000 Lines」 というオンラインブックを書きました。ゼロから1,000行でOSを作るという内容です。 『自作OSで学ぶマイクロカーネルの設計と実装』 とは違い、最初の一歩の部分を重点的に解説しています。シンプルなモノリシックカーネル設計で、実装の解説だけでなくカーネルプログラミング特有の難しい部分、特に「カーネルをどうデバッグすれば良いか」をおさえた、初学者向きの内容になっています。 3日ほどあれば済むボリュームです。夏休みの自由研究がてら、ぜひチャレンジしてみてください。

    1,000行で作るオペレーティングシステム
    Nyoho
    Nyoho 2023/09/23
  • OSカーネルに興味がある人におすすめの参考資料

    テキスト https://speakerdeck.com/sat/oskanerunixing-wei-gaaruren-niosusumenocan-kao-zi-liao # 訂正 「12ステップで作る組込みOS自作入門」のCPUアーキテクチャをARMと言っていましたが正しくはH8です。 # 紹介した書籍一覧 コンピュータの構成と設計 MIPS Edition 第6版 https://amzn.to/3oXiUgA はじめて読む486 https://amzn.to/42AT287 Linuxのしくみ https://amzn.to/3qDtCcD オペレーティングシステム 設計と実装 第3版 https://amzn.to/3N33kYz Operating Systems Design and Implementation, 3rd edition https:/

    OSカーネルに興味がある人におすすめの参考資料
  • この個人サイトは自作OSで動いています

    追記 (2022 5/29): サーバ代をケチるべくVercelに移行しました。動いていたソースコードは ココ に置いてあります。 あなたの予想に反して、このページが見えているでしょうか?このWebサイトは自作OSのKerlaが提供しています。 これは自作OS Advent Calendar 2021の23日目の記事です。 自作OS「Kerla」の紹介 Kerla(かーら)はRustで書かれたLinux ABI互換モノリシックカーネルです。今年の春頃から作り始め、DropbearというSSHサーバが動作する程度には基的なUNIXの機能が実装されています。具体的には、ファイルの読み書きやUDP/TCPソケット、fork/exec、シグナル、擬似端末といったものです。 カーネル実装の雰囲気を軽く紹介すると、Kerlaでは以下のようにシステムコールが実装されています。 /// write(2)

    この個人サイトは自作OSで動いています
    Nyoho
    Nyoho 2022/01/03
    「Kerla(かーら)はRustで書かれたLinux ABI互換モノリシックカーネルです」
  • SerenityOS

    A graphical Unix-like operating system for desktop computers! SerenityOS is a love letter to '90s user interfaces with a custom Unix-like core. It flatters with sincerity by stealing beautiful ideas from various other systems. Roughly speaking, the goal is a marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix. This is a system by u

    Nyoho
    Nyoho 2021/12/20
  • GitHub - rust-embedded/rust-raspi3-tutorial: Bare-metal Raspberry Pi 3 tutorials in Rust

    Each tutorial contains a stand-alone, bootable kernel binary. Each new tutorial extends the previous one. Each tutorial README will have a short tl;dr section giving a brief overview of the additions, and show the source code diff to the previous tutorial, so that you can conveniently inspect the changes/additions. Some tutorials have a full-fledged, detailed text in addition to the tl;dr section.

    GitHub - rust-embedded/rust-raspi3-tutorial: Bare-metal Raspberry Pi 3 tutorials in Rust
    Nyoho
    Nyoho 2021/09/29
  • Mac OS X is 20; was born of 'a desperate act' by Apple - 9to5Mac

    Nyoho
    Nyoho 2021/03/25
  • 『ゼロからのOS自作入門』に込めた思い - uchan note

    2021 年 3 月 22 日に『ゼロからの OS 自作入門』を出版する予定です。 書は OS を手作りするで、現代のパソコンでちゃんと起動する点が特長です。 15 年前の 2006 年に出版された『30 日でできる!OS 自作入門』を読んで育った私(uchan)が その後継となるだろうを書いたということで、執筆の裏話を記してみたいなと思います。 書籍の概要 タイトル:ゼロからの OS 自作入門 著者:内田公太(uchan) 出版予定日:2021 年 3 月 22 日 ページ数:768(最大。実際はもっと少なくなる予想) ISBN:978-4-8399-7586-9 出版社の書籍ページ:ゼロからのOS自作入門 | マイナビブックス 書は OS 作りに関する知識がないところから始め、オリジナルの OS「MikanOS」を作る一通りの過程を説明します。 パソコンの電源を入れ、他の OS

    『ゼロからのOS自作入門』に込めた思い - uchan note
    Nyoho
    Nyoho 2021/02/08
    数年前の広島C++勉強会で講演を聞いて、いつかOSの自作の本を出されることを楽しみにしていました。
  • OS in Rust: An executable that runs on bare metal: Part-1

    This is the very first blog of the series that pertains to create a basic Operating System using Rust Programming Language. The aim of this series is to learn and understand the basics of Operating System. Through this series, you will get some ideas about the internal components of Operating System and how they interact with each other. In this article, we will create a freestanding binary (an ex

    OS in Rust: An executable that runs on bare metal: Part-1
    Nyoho
    Nyoho 2020/10/02
  • マイクロカーネルの設計と実装

  • Rustで組込みプログラミングや自作OS作成をするには

    これは以前からつくっていたErkOSという自作OSでの経験を元にして、どうやったらRustで自作組込みOSの最初の一歩を踏み出せるか、というものをドキュメントにしたものです。 このドキュメントはこの前の技術書展の告知が来たあたりから構想を練っていて、すきま時間にちまちまと書き進めていたものですが、とりあえず、プロセスの切り替えっぽいところまでの説明を終えることができたので公開しました。 組込みでRustをやる話や自作OSを書く話というのは先駆者がたくさんいて、僕自身もそれらの資料を参考にしつつ書き進めて来ました。 一応、それらの既存のものとは差別化はしているつもりではあるものの、既存のものを完全に上回るというものではないです。内容もまだまだ足りない。 以前、RustでOSを書くプロジェクトもろもろでいくつかOSを書く際に参考になりそうなプロジェクトをまとめましたが、情報も古くなってきたので

    Rustで組込みプログラミングや自作OS作成をするには
    Nyoho
    Nyoho 2020/05/07
  • Rust製の組み込みOS『Tock』について調べてみた - 重力に縋るな

    これは 自作OS Advent Calendar 2019 の9日目の記事です. はじめに 最近大人気ですよね,Rust. 全人類Rust書いとる...俺は... システムプログラミング言語ですし,LLVMを使っているので色々なアーキテクチャ向けにコンパイルできますし, 安全性を重視しているので,RustでOSが書けるようになると色々と面白そうです. とはいえ,なんだかんだでちゃんと使ってみようという気になれず,まだあまり書いたことがありません. そこで,今回はRustで書かれたOSであるTockを使って,モダンな言語でのOSの作り方やRustそのものについて調べてみようと思います. Tockとは TockはRustで書かれたCortex-MやRISC-Vで動く組み込みOSです. https://github.com/tock/tock 最近はSTM32でも動くらしいですね. https:

    Rust製の組み込みOS『Tock』について調べてみた - 重力に縋るな
    Nyoho
    Nyoho 2020/01/31
  • CとRustで一から作るマイクロカーネルOS

    マイクロカーネルは浪漫に溢れる非常に作りがいのあるソフトウェアです。この記事は,「マイクロカーネルベースのOSの一から作ってIaaSで動かす」ことを目標に作ったマイクロカーネルベースのOS Resea(りーせあ)の設計と実装について軽くまとめた物です。 ソースコードはGitHubにあります。 マイクロカーネルとは Linuxのようなモノリシックカーネルでは色んな機能がカーネル空間で動きますが,マイクロカーネルではユーザプロセスたちが互いに通信しながらOSを作り上げます。プロセス・スレッド・仮想メモリ管理,プロセス間通信,タイマーといった必要最低限の機能だけをカーネルが担います。デバイスドライバやファイルシステムといった残りの機能は,独立したユーザプロセスとして動きます。たとえデバイスドライバが暴走しても他のコンポーネントを壊すことはないのです。マイクロカーネルは信頼性が高く,疎結合で美しい

    Nyoho
    Nyoho 2019/12/14
  • 作って理解するOS x86系コンピュータを動かす理論と実装

    2019年9月26日紙版発売 2019年9月26日電子版発売 林高勲 著,川合秀実 監修 B5変形判/736ページ 定価4,048円(体3,680円+税10%) ISBN 978-4-297-10847-2 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 現在広く普及している,x86系CPU搭載のコンピュータ。 書はOSの機能を実装しながら,その姿を明らかにしていきます。 第1部ではまず,ハードウェア,ソフトウェアの基概念や,CPUとOSの関係など,コンピュータの核となる理論を丁寧に解説します。 第2部では,x86系コンピュータに対象を絞り,レジスタの構成や,

    作って理解するOS x86系コンピュータを動かす理論と実装
    Nyoho
    Nyoho 2019/09/17
  • Huaweiがオープンソースな「ハーモニーOS」発表! スマホから自動車まで対応

    Huaweiがオープンソースな「ハーモニーOS」発表! スマホから自動車まで対応2019.08.09 17:2427,805 塚直樹 反撃の狼煙か。 貿易戦争真っ只中の中国Huawei(ファーウェイ)が、オープンソースな独自OS「HarmonyOS」を開発者向け会議にて発表しました! Huaweiによれば、HarmonyOSは「初のマイクロカーネルベースの多用途向けOS」とのこと。スマートフォン、タブレット、スマートスピーカー、スマートウォッチ、ワイヤレスイヤホン、自動車など、多様なデバイスで利用可能。RAMサイズはキロバイトクラスからギガバイトクラスまで想定されています。 HarmonyOSのアプリをビルドするARKコンパイラはKotlinJavaJavascript、C、C++をサポート。そして将来的には、HTML5やLinuxAndroidアプリなどのさまざまなアプリとの互換

    Huaweiがオープンソースな「ハーモニーOS」発表! スマホから自動車まで対応
    Nyoho
    Nyoho 2019/08/10
  • 55 日かけて OS を作った - kawasin73のブログ

    整骨院は保険がきく。どうも、かわしんです。 突発的な不調の場合は整骨院は保険が適用され 3 割負担になります。慢性的なもの(肩こり)には適用されません。 さて、5 月 20 日に以下のように宣言して作り始めた OS が、昨日ようやくひと段落したのでまとめの記事を書くことにしました。 さて、それでは今日から30日かけてOSを作っていきたいと思います— かわしん@ソフトウェアエンジニア (@kawasin73) May 19, 2019 かの有名な「30日でできる! OS自作入門」(通称 : 30日OS)をただ写経しただけなのですが、すごく勉強になりました。 30日でできる! OS自作入門 作者: 川合秀実出版社/メーカー: マイナビ出版発売日: 2006/03/01メディア: Kindle版この商品を含むブログを見る このは 30 日とうたっていますが、僕は 55 日かかりました。ただ忙

    55 日かけて OS を作った - kawasin73のブログ
    Nyoho
    Nyoho 2019/07/21
  • Writing an OS in Rust (Second Edition)

    This blog series creates a small operating system in the Rust programming language. Each post is a small tutorial and includes all needed code, so you can follow along if you like. The source code is also available in the corresponding Github repository. Latest post: Async/Await The first step in creating our own operating system kernel is to create a Rust executable that does not link the standar

    Nyoho
    Nyoho 2019/05/13
  • uchanの自作OS的な自分史 - uchan note

    筆者(uchan)は現在,自作OSの分野で精力的に活動しています.そんな筆者も最初から知識が有ったわけではありません.当然ですが最初は初心者でした.このエッセイは,筆者の自作OS人生を振り返り,何のきっかけで自作OSに足を踏み入れ,どうやって成長したかを語るものです. 筆者について 筆者はOS開発関連技術のコミュニティosdev-jpで活動しています.OSや低レイヤ技術が好きな人が集まってもくもくと作業をする「自作OSもくもく会」を2ヶ月に1回くらい開催したり,OSC(オープンソースカンファレンス)に出展したりしています.また,2017年と2018年にはセキュリティキャンプ全国大会でOS開発を主題とするゼミの講師をやりました. 筆者はIntel x86アーキテクチャが好きで,そのためのOSを作るための要素技術を研究しています.OSを作るためにはページングやLocal APICなどのCPU

    uchanの自作OS的な自分史 - uchan note
    Nyoho
    Nyoho 2019/02/13
  • RustでRISC-V OS自作!はじめの一歩 - Qiita

    オープンソースのRISC CPU命令セットアーキテクチャです。 いわずと知れた至高の命令セットアーキテクチャです。 来年あたりはHypervisor拡張命令セットの盛り上がりを期待しています。 いわずと知れた至高の戯れです。 低レイヤ好きにはたまらないですね! つまり、記事の趣旨は、至高のプログラミング言語で、至高の命令セットをターゲットに、至高の戯れをする!ということです。 当のはじめに x86でOS自作を始めるのも1つの有力な選択肢です。 その場合の利点と欠点は次のようなものと考えています。 利点 クロスコンパイラが不要なため、開発環境を整えやすい 普段使用しているPCなどで動作するOSが作れる 他の命令セットが簡単に思える 欠点 歴史的経緯があり、命令セットがとにかく複雑 エミュレータやCPU自作に手を伸ばしにくい これに対して、RISC-VでOS自作を始める場合、その利点欠点は

    RustでRISC-V OS自作!はじめの一歩 - Qiita
    Nyoho
    Nyoho 2018/12/05
    すごい。
  • OSDI 2010〜2018の中で個人的に面白かった論文を雑に一言づつ紹介 - livaの雑記帳

    システム系のトップ学会の一つである、OSDI (USENIX Symposium on Operating Systems Design and Implementation)の論文を2010年まで一通り眺めてみたので、その中で個人的に面白かった物をまとめてみる。 一通り眺めたといっても、全て読んだわけではないので、見逃してる論文もたぶんある。あと、英語力低くて趣旨を取り違えてる論文もあると思うけど、寛大な心で見逃してもらえると有り難いです。 (こういう系の話、少し間違えると「おめーここ間違ってるじゃねーか!」ってマサカリが飛んでくる印象があって、あんまり書きたくないんですよね) 2018 LegoOS: A Disseminated, Distributed OS for Hardware Resource Disaggregation https://www.usenix.org/co

    OSDI 2010〜2018の中で個人的に面白かった論文を雑に一言づつ紹介 - livaの雑記帳
    Nyoho
    Nyoho 2018/11/03
  • hikalium.com

    Mac OSX におけるはりぼてOSの開発環境を(再)整備した話 この記事は、自作OS Advent Calendar 2016の一部として作成されました。 はりぼてOSをマルチプラットフォームで開発できるよう、開発環境を整備した話が書かれています。 タイトルに反して、Linuxでの開発についても書かれています! 背景 みなさんは「はりぼてOS」をご存知ですか? はりぼてOSは、川合秀実氏著の「30日でできる!OS自作入門」というの中でつくりあげられるOSです。 名前の通り、非常に「はりぼて」な完成度となっておりますが、それでもブートローダーを含めフルスクラッチで開発されており、またKさん(川合秀実氏のこと)らしく、フロッピーディスク1枚に余裕で収まるサイズを実現しており、OS自作の基礎を学ぶには最適です。 …なんてことは、自作OSアドベントカレンダーをご覧になっている皆様にとっては常識

    Nyoho
    Nyoho 2018/10/28