タグ

docとallocに関するmasterqのブックマーク (2)

  • Rust for Linuxを手元で試す

    RustLinuxカーネルに組込みプロジェクトRust for Linuxが進行中です。 このプロジェクトLinuxカーネル全体をRustで置き換えるわけではなく、第二言語としてRustを採用してデバイスドライバなどのモジュールを書くことができるようにしようというものです。 RustはOSのような低レイヤーソフトウェアを実装する言語として、C言語に代わる選択肢として注目されてきたわけですが、Linuxのような広く使われているシステムに採用されるとなればかなり熱いですね。 実際にLinuxのメインラインに取り入れられるにはまだまだ課題は多いものの、Linus氏を含むLinuxの開発者からのフィードバックも比較的ポジティブでこれからが注目されています。 そんなRust for Linuxを手元でビルドして動かしてみました。 一応、基的な手順はレポジトリ内のドキュメントにまとまっているの

    Rust for Linuxを手元で試す
    masterq
    masterq 2022/06/30
    panicを引き起こしそうなAPIは`no_global_oom_handling`というcfgで除外されているようだ。そのため`Vec::push()`や`Box::new()`とかも呼び出せない。
  • Linuxカーネル4.1のSLUBアローケータ(ドラフト) - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    はじめに スラブアローケータ Linuxのスラブアローケータ slabアローケータ slobアローケータ slubアローケータ スラブオブジェクトの管理 使用中リスト スラブのマージ機能 Chache Coloring スラブの不活性化 frozen状態 スラブキャッシュの情報 slubアローケータのデータ構造 データの関連 slubアローケータで使用するデータの関連 スラブのライフサイクル スラブアローケータの機能 スラブキャッシュの作成 スラブキャッシュ生成時に設定するフラグ 空きオブジェクトの管理 空きスラブオブジェクトの設定 スラブオブジェクトの確保 スラブオブジェクトの解放 kmem_cache_cpu構造体のデータクリア スラブの不活性化 スラブの削除 スラブキャッシュの削除 スラブキャッシュのセットアップ slubアローケータで使用するヘルパー関数 __cmpxchg_dou

    Linuxカーネル4.1のSLUBアローケータ(ドラフト) - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • 1