タグ

自作に関するKazumi007のブックマーク (3)

  • やってよかったbuild own x系(自作OSとか自作DBみたいな自作~)を紹介してみる

    はじめに build own xってなに?という方がいらっしゃると思います。 下記ページにあるような自作~みたいなやつのことを指しています。 自作OSとかDBとかとにかく様々な種類があるんですが、僕がやってみて良かったなぁと感じたものだけ紹介します。(一部やってないけど良さそうなのも紹介します。) 難易度を星5を最高として書いていきます。 言語は日語 or 英語です。 コンパイラ writing interpreter in go 形態: 言語: 日語、英語 コンパイラ系なら一番初めにおすすめなのは間違いなくこれ。 日語版では「Go言語でつくるインタプリタ」という題で出版されています。 外部に依存するライブラリを一切使わないのが特徴でスクラッチで書きます。 語り口調も平易でわかりやすく、コンパイラ?インタープリタ?という方にもおすすめ。 Monkeyという言語を実装するのですが、既

    やってよかったbuild own x系(自作OSとか自作DBみたいな自作~)を紹介してみる
  • Rustでリレーショナルデータベースを自作したときの成果と反省と学び - Yoshisaurのメモ

    はじめに この記事では、個人プロジェクトとしてRust言語でリレーショナルデータベースを開発した経験(もう五ヶ月も前...)について、その成果と反省、得た学びを共有します。 DBMSを自作した理由 自分がDBMSの自作に着手したのは、『Designing Data-Intensive Applications』というの内容を深く理解するためでした。 このは、データシステムの設計と運用において最も大切な「信頼性」、「拡張性」、「保守性」を保証する方法論を、豊富な文献を引用しつつ、理論と実践の橋渡しを巧みに行いながら、丁寧に説明している名著です。読んだことがない人は速攻購入してくだい。当にいいです。 このは、データベースの内部構造に関する話も豊富に含まれていたので、「データベース自作してみようか...」という気持ちになりました。 Rustを採用した理由 データベースの実装のついでに、

    Rustでリレーショナルデータベースを自作したときの成果と反省と学び - Yoshisaurのメモ
    Kazumi007
    Kazumi007 2024/03/03
    “今回作ったものは、それはそれで理解の役に立ったし、経験値も積めたので、感謝とともにどっかで投げ捨てましょう”
  • ちょっと寄り道 __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

  • 1