タグ

OSに関するKazumi007のブックマーク (9)

  • Linuxにおけるデバイスファイルの仕組み

    Linuxにおけるデバイスファイルはデバイスをファイルという概念を通して扱えるようにしたものです。デバイスファイルは通常のファイルと同様に読み書きを行うことができます。しかし実際には、その読み書きはデバイスドライバを通じてデバイスの制御に変換されます。 この記事では、デバイスファイルへの読み書きがどのようにデバイスの制御に変換されるのかを説明します。デバイスファイルはデバイスドライバとファイルの2つのコンポーネントに依存したものであるので、最初にデバイスドライバ、次にファイルについて説明し、最後にデバイスファイルがどのようにデバイスドライバと結び付けられるかを解説します。 この記事の内容は主に詳解 Linuxカーネル 第3版及びhttps://github.com/torvalds/linux/tree/v6.1によります。 目次 デバイスドライバ デバイスドライバの実例 read_wri

    Linuxにおけるデバイスファイルの仕組み
  • 12ステップで作る 組込みOS自作入門

    ページは「12ステップで作る 組込みOS自作入門」のサポートページです 開発環境を構築済みのVMイメージを配布しています! 第1章の環境構築がうまくいかないかたはご利用ください! 「12ステップで作る 組込みOS自作入門」はカットシステムから2010年5月に 発売されています. amazonより購入 出版元であるカットシステム様のホームページ 書籍中で利用するツール類などは以下からダウンロードできます. KOZOSのソースコード binutils-2.19.1 gcc-3.4.6 h8write (家) h8write.c (家で配布しているものをこちらでも配布(ソースコードのみ)) 検証用のコンパイル済みモジュール h8writeでのフラッシュROM書き込みがうまくいかない人は,shintaさんの改良版「kz_h8write」を試してみてください! binutils-2.21.1を

    Kazumi007
    Kazumi007 2023/02/10
    サポートページ
  • DebianでH8用のGCCをビルドする(2020年版) - Qiita

    結論 以下の組み合わせでH8/300H用のツールチェインがビルド可能。(11/4 追記:ただしnewlibの動作を実機マイコンで確認していない。GCCはH8/3664Fでの動作を確認済み) Debian 10.6 binutils-2.30 gcc-8.4.0 newlib-2.5.0 はじめに Debian/UbuntuにはH8/300H用のパッケージ(gcc-h8300-hms 3.4.6,binutils-h8300-hms 2.16.1)が用意されているものの,既にバージョンが古くnewlibもない。 また,各所で紹介されている情報も古くなりつつあるため,最低限のアップデート情報を紹介する。 準備 以下のパッケージをインストールする。 apt install build-essential libgmp-dev libmpfr-dev libmpc-dev bison flex t

    DebianでH8用のGCCをビルドする(2020年版) - Qiita
    Kazumi007
    Kazumi007 2023/02/09
    クロスコンパイラインストールにporgを使う
  • ちょっと寄り道 __mulsi3(12ステップ本) | Physical Computingに挑戦!

    __mulsi3をStep9のlib.cに実装してみることにした。 で、まずはkozos.cのthread_runのアドレス計算部分を元に戻して、gcc -S kozos.cでアセンブラを出力。 該当部分は次のようになっている。 mov.w @(-2,r6),r2 mov.w #40,r1 mov.w r2,r0 jsr @___mulhi3 mov.w r0,r2 mov.w #_threads,r3 add.w r3,r2 r1とr0に2バイトの値を入れて __mulsi3 をコールしてr0に2バイトの値を返すらしい。(実はここにあるのは __mulhi3 で __mulsi3 じゃないのに後で気が付いた。いつから __mulhi3 になったのかはわからない。) なので__mulsi3は int __mulsi3(int a, int b) として定義すればいいんだと思った。 で、li

  • 今どきのLinux事情

    とりとめない話ですが、今どきのLinuxのパッケージングの種類とSteamDeckから一気に改善されたDirectX 周りの話です。社内の勉強会で共有した資料

    今どきのLinux事情
    Kazumi007
    Kazumi007 2022/07/03
    懐かしい話も多い。おじさん向け。
  • Operating Systems: Three Easy Pieces

    Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau (University of Wisconsin-Madison) NEW: Security Chapters by Peter Reiher (UCLA) Welcome to Operating Systems: Three Easy Pieces (now version 1.10 -- see book news for details), a free online operating systems book! The book is centered around three conceptual pieces that are fundamental to operating systems: virtualization, concurrency, and pers

  • Are You Sure You Want to Use MMAP in Your Database Management System?

    Are You Sure You Want to Use MMAP in Your Database Management System? Andrew Crotty Carnegie Mellon University andrewcr@cs.cmu.edu Viktor Leis University of Erlangen-Nuremberg viktor.leis@fau.de Andrew Pavlo Carnegie Mellon University pavlo@cs.cmu.edu ABSTRACT Memory-mapped (mmap) file I/O is an OS-provided feature that maps the contents of a file on secondary storage into a program’s address spac

    Kazumi007
    Kazumi007 2022/01/18
    DBMSの実装にmmapを使うことが適してないことがある。
  • Xcode - Wikipedia

    Language links are at the top of the page across from the title.

    Xcode - Wikipedia
    Kazumi007
    Kazumi007 2020/10/18
    Xcodeとllvmのバージョン対応表が便利
  • 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

  • 1