ウォンツテック

そでやまのーと

assembler

x86_64のLongモードをやってみる

なんとなく64bitCPUのブートシーケンスが気になったのでx86_64(AMD64)のブートを調べてみました。 AMD64アーキテクチャ互換のCPUが無いため実行環境はエミュレータのqemu-system-x86_64で。 開発環境も32bitしか無いため32bitホスト上に以下のようなクロスコ…

Linux上でアセンブラによるシステムコールの呼び方 例. write writeはC上では ssize_t write(int fd, const void *buf, size_t count); となっておりこれをアセンブラから呼ぶには 1. 引数を渡す 2. システムコール番号を設定する 3. 割り込みを掛ける とな…