タグ

2023年4月15日のブックマーク (3件)

  • Linuxのローダを自作する

    概要 Linuxのスタンダードなローダ、ld-linux-x86-64.so.2 の挙動を理解するために、ld-linux-x86-64.so.2を置き換え可能な https://github.com/akawashiro/sloader を2年ほど前から開発しており、ある程度動くようになってきました。 目次 ローダとは何か ld-linux-x86-64.so.2 の問題点 sloader sloader の現状 sloaderの実装 libc.so内のシンボルの解決 ロードされたプログラムのためのTLS領域の確保 sloaderの課題 お願い ローダとは何か Linuxで実行可能なバイナリファイルをexecve(2)を使って実行するとき、その実行パスは大きく2つに分類されます。 Linux カーネルが直接、バイナリファイルをメモリ空間にロードする。 バイナリが指定したローダ[1]がバイ

    Linuxのローダを自作する
  • Goのクリーンアーキテクチャで参考になりそうなもの

    はじめに Goでクリーンアーキテクチャっぽく実装したいモチベーションがあり、そのためにはコードを読むのが一番だと思ったので、参考にしていったリポジトリをまとめてみます。 観点としては スター数が比較的多いもの(400以上) READMEにアーキティクチャについての考えが明記されているもの を中心にピックアップしました。 Goの実装で参考にしたリポジトリ Goとは関係ないかもしれないが参考にしたリポジトリ おわりに 何かの参考になれば幸いです。

    Goのクリーンアーキテクチャで参考になりそうなもの
  • Viteでの開発中のSSR対応の仕組み

    この記事は新歓ブログリレー2023 37日目(4/14)の記事です。 こんにちは、19B/22Mの翠(sappi_red)です。SysAd班で活動していました。Viteのチームメンバーだったりもします。 この記事ではViteでの開発中のSSR対応の仕組みがどう実装されているか、どうしてそうなっているかについて紹介します。 前提知識 特筆すべき点のみを取り上げたざっくりとした説明です。 Webフロントエンド Web上のサービス・アプリケーションのユーザー側に近い開発領域のことを指します。「ボタンを押したときにどうなるか」や「ページ内のどこに何が表示されるか」をプログラムするなど、主にユーザーの端末上で動作するプログラムの部分を指します。 Vite Webフロントエンド開発において使われているツールの一つです。フロントエンドのプログラムを構成するファイルを各実行環境(ブラウザ、Node.jsな

    Viteでの開発中のSSR対応の仕組み