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

歡迎光臨散文網(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ó)家法律
定安县| 油尖旺区| 蕲春县| 楚雄市| 汪清县| 大洼县| 罗江县| 崇信县| 宽城| 湟源县| 昭苏县| 隆德县| 克拉玛依市| 南涧| 西安市| 孝感市| 栾川县| 合肥市| 九台市| 昌黎县| 梁河县| 阳信县| 赣榆县| 互助| 盐亭县| 武安市| 夏河县| 康定县| 长汀县| 观塘区| 行唐县| 兴业县| 克山县| 桑日县| 牡丹江市| 比如县| 清水河县| 仁怀市| 苏尼特左旗| 兰溪市| 泸水县|