最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

0171-創(chuàng)建內(nèi)核可執(zhí)行文件

2023-08-18 10:53 作者:jiangbo4444  | 我要投稿

環(huán)境

  • Time 2022-11-11

  • WSL-Ubuntu 22.04

  • QEMU 6.2.0

  • NASM 2.15.05

前言

說(shuō)明

參考:https://os.phil-opp.com/multiboot-kernel/

目標(biāo)

編寫一個(gè)可以加載執(zhí)行的文件。

啟動(dòng)代碼

start 是啟動(dòng)入口,.text 表示是代碼段。
bits 32 指定了編譯成 32 位的機(jī)器碼,因?yàn)樾枰?32 位保護(hù)模式下執(zhí)行。
0xb8000 是顯存地址,輸出使用。
hlt 是 CPU 停機(jī)指令。

編譯和反編譯

創(chuàng)建 ELF 文件

ELF 主要是 linux 系統(tǒng)下的一種文件格式。
nasm 默認(rèn)輸出二進(jìn)制文件,需要 ELF 文件,需要增加參數(shù) -f 指定,得到兩個(gè) .o 文件(對(duì)象文件)。

鏈接對(duì)象文件

自定義鏈接腳本

  • start 指定的程序入口。

  • . = 1M 指定了程序需要被加載到哪個(gè)地址上。

  • .boot 放到最開始,后面是 .text 段。

  • multiboot_header 放到最前面。

鏈接

-n 不可以省略,關(guān)閉對(duì)齊。

查看 section 信息

總結(jié)

創(chuàng)建了一個(gè)內(nèi)核可執(zhí)行程序 kernel.bin。

附錄

0171-創(chuàng)建內(nèi)核可執(zhí)行文件的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
托克逊县| 滕州市| 丹凤县| 札达县| 同心县| 乡城县| 陵川县| 陈巴尔虎旗| 杭锦旗| 菏泽市| 阳信县| 徐州市| 博客| 佛冈县| 句容市| 正阳县| 昆明市| 海伦市| 靖安县| 金阳县| 灌南县| 仙桃市| 广平县| 安宁市| 白城市| 贵定县| 山丹县| 永城市| 泾川县| 梧州市| 柳河县| 石屏县| 扶余县| 阜城县| 祥云县| 桐梓县| 金堂县| 闸北区| 体育| 高陵县| 佛教|