人生は勉強ブログ

https://github.com/dooooooooinggggg

2019-01-01から1年間の記事一覧

Linux Kernelをビルドする際,プリプロセッサの出力を残す

この記事はSFC-RG Advent Calendar 2019の17日目の記事です. 結論 Makefileのこの辺にKBUILD_CFLAGS += -save-temps=objという行を加えてビルドする. before KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ -fno-strict-aliasing -…

KASLRの実装と挙動の確認

この記事はSFC-RG Advent Calendar 2019の16日目の記事です. 今年も遅くなって申し訳ないです. この記事では,KASLR,kernel address space layout randomizationについて記述する. KASLRは,カーネル領域における仮想アドレス空間のランダム化である.こ…

Debian buster でデスクトップ環境を切り替える

自分のためのメモです. 環境 Debian buster 10.1 install KDE sudo apt install task-kde-desktop GNOME sudo apt install task-gnome-desktop 切り替え 環境の切り替え sudo update-alternatives --config x-session-manager ログイン画面の変更 sudo dpkg…

"No rule to make target 'debian/certs/debian-uefi-certs.pem', needed by 'certs/x509_certificate_list'. Stop."を解決する

Debianでカーネルをビルドする際に以下のエラーが発生して,ビルドが停止した. make # SYSTBL arch/x86/include/generated/asm/syscalls_32.h # SYSHDR arch/x86/include/generated/asm/unistd_32_ia32.h # SYSHDR arch/x86/include/generated/asm/unistd_6…

debファイルを用いてDebianのLinuxカーネルを簡単にアップデートする

概要 Debianのカーネルをアップデートする際に,debファイルを用いることで,aptを用いてインストールをシンプルに行うことができる. また,カーネルのパッケージをdebファイルとして保持できるため,ロールバックも容易になる. 環境 Debian 9 stretch mak…

Linux KernelをビルドしてQEMUで動かす.

環境 cat /etc/debian_version # 9.9 qemu-system-x86_64 --version # QEMU emulator version 2.8.1(Debian 1:2.8+dfsg-6+deb9u7) # Copyright (c) 2003-2016 Fabrice Bellard and the QEMU Project developers Debian stretch 9.9 QEMU: 2.8.1 必要なパッケ…

Linux(2.6.11)において,int 0x80命令によってシステムコールが呼ばれる流れを追ってみる

Linux(2.6.11)において,int 0x80命令によってシステムコールが呼ばれる流れを追ってみた この記事では,以下の本を参考に,実際にコードを見ていく記事. 参考文献: Linuxカーネル2.6解読室 Linuxカーネル2.6解読室作者: 高橋浩和,小田逸郎,山幡為佐久出版…