日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Linux開(kāi)機(jī)啟動(dòng),如何啟動(dòng)內(nèi)核?(linux怎么啟動(dòng)內(nèi)核)

Linux操作系統(tǒng)在開(kāi)機(jī)時(shí),需要啟動(dòng)內(nèi)核,以便讓系統(tǒng)能夠正常運(yùn)行。內(nèi)核是操作系統(tǒng)的核心組件,它負(fù)責(zé)管理操作系統(tǒng)的資源,控制系統(tǒng)的運(yùn)行,處理外部設(shè)備的數(shù)據(jù)等。本文將介紹Linux開(kāi)機(jī)啟動(dòng)過(guò)程中如何啟動(dòng)內(nèi)核。

站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到中山網(wǎng)站設(shè)計(jì)與中山網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、主機(jī)域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋中山地區(qū)。

1. BIOS加載

在電腦開(kāi)機(jī)時(shí),計(jì)算機(jī)會(huì)首先加載Basic Input/Output System(BIOS),BIOS是一種固化在主板固件中用于在開(kāi)機(jī)時(shí)初始化硬件和啟動(dòng)操作系統(tǒng)的程序。首先BIOS會(huì)進(jìn)行硬件自檢,然后掃描并加載硬盤(pán)上的引導(dǎo)扇區(qū)。

2. 引導(dǎo)扇區(qū)的加載

引導(dǎo)扇區(qū)是硬盤(pán)上的一個(gè)區(qū)域,它負(fù)責(zé)加載操作系統(tǒng)的引導(dǎo)程序。在Linux系統(tǒng)中,引導(dǎo)程序位于/boot/grub/目錄下的grub.cfg文件中。該文件包含了操作系統(tǒng)的啟動(dòng)選項(xiàng)和引導(dǎo)順序。

當(dāng)BIOS加載了引導(dǎo)扇區(qū)后,它會(huì)掃描引導(dǎo)扇區(qū)的內(nèi)容,并將控制權(quán)交給引導(dǎo)程序。引導(dǎo)程序的主要作用是加載內(nèi)核,并將操作系統(tǒng)的控制權(quán)轉(zhuǎn)交給內(nèi)核。

3. 內(nèi)核加載

引導(dǎo)程序?qū)⒓虞d內(nèi)核的過(guò)程分為兩個(gè)階段:之一個(gè)階段和第二個(gè)階段。

之一個(gè)階段:引導(dǎo)程序會(huì)從硬盤(pán)中找到內(nèi)核文件,并將內(nèi)核文件加載到內(nèi)存中。內(nèi)存地址通常是0x100000(1MB),然后跳轉(zhuǎn)到此地址,進(jìn)入第二個(gè)階段。

第二個(gè)階段:內(nèi)核已經(jīng)在內(nèi)存中運(yùn)行,操作系統(tǒng)從此時(shí)開(kāi)始啟動(dòng)。內(nèi)核啟動(dòng)時(shí)會(huì)執(zhí)行一些初始化操作:

1. 內(nèi)核會(huì)檢測(cè)系統(tǒng)的硬件設(shè)備,如處理器、內(nèi)存、硬盤(pán)、輸入設(shè)備等。

2. 內(nèi)核會(huì)初始化CPU,并分配CPU時(shí)間片,就像操作系統(tǒng)分配CPU時(shí)間片一樣,以便讓各個(gè)進(jìn)程可以輪流執(zhí)行。

3. 內(nèi)核還會(huì)加載一些模塊,如驅(qū)動(dòng)程序等,以便系統(tǒng)能夠識(shí)別硬件設(shè)備并進(jìn)行相應(yīng)的操作。

4. 內(nèi)核會(huì)加載root文件系統(tǒng),這是Linux操作系統(tǒng)中的核心文件系統(tǒng)。root文件系統(tǒng)包含了所有操作系統(tǒng)的文件和目錄。

5. 內(nèi)核會(huì)運(yùn)行init程序,init程序是Linux操作系統(tǒng)中的之一個(gè)進(jìn)程,它會(huì)初始化操作系統(tǒng),并啟動(dòng)其他服務(wù)進(jìn)程。

在Linux操作系統(tǒng)中,內(nèi)核是最重要的組件之一,它是操作系統(tǒng)的核心,并負(fù)責(zé)管理硬件資源和控制系統(tǒng)的運(yùn)行。在Linux開(kāi)機(jī)啟動(dòng)過(guò)程中,首先BIOS會(huì)加載引導(dǎo)扇區(qū),然后引導(dǎo)程序會(huì)加載內(nèi)核,并將控制權(quán)交給內(nèi)核。內(nèi)核會(huì)執(zhí)行一些初始化操作,包括檢測(cè)硬件、初始化CPU、加載驅(qū)動(dòng)程序和root文件系統(tǒng)等。內(nèi)核會(huì)運(yùn)行init進(jìn)程,初始化操作系統(tǒng),并啟動(dòng)其他服務(wù)進(jìn)程。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù)!

如何使linux開(kāi)機(jī)時(shí)選擇要進(jìn)入的內(nèi)核版本

開(kāi)機(jī)一直按E鍵即可進(jìn)入內(nèi)核選擇界面。

找了蠻久解決方案的一個(gè)問(wèn)題……

編輯 /etc/default/grub (比如命令:sudo gedit /etc/default/grub)

找到 hidden_timeout 數(shù)字改為10,保存

終端執(zhí)行命令:sudo update-grub

sudo reboot重啟 ,正常的話(huà) 會(huì)有一個(gè)

倒計(jì)時(shí)

那個(gè)時(shí)候按住shift 然后在菜單欄里選就ok了

啟動(dòng)Linux操作系統(tǒng)后,按‘e’鍵進(jìn)入Grub引導(dǎo)界面,選擇指定內(nèi)核進(jìn)行引導(dǎo)。

在開(kāi)機(jī)后的引導(dǎo)菜單里面用鍵盤(pán)上的上下方向鍵選擇,回車(chē)就可以了

修改grub.cfg

如何使用bochs啟動(dòng)linux2.6.0版本內(nèi)核

當(dāng)然不能真正啟動(dòng)就panic了,但是單步調(diào)試和理解內(nèi)核在x86平臺(tái)啟動(dòng)已經(jīng)夠了灶罩逗。

bochs下運(yùn)隱賣(mài)行l(wèi)inux3.0內(nèi)核(已驗(yàn)證)

1. 構(gòu)造調(diào)試環(huán)境

由于bochs內(nèi)建調(diào)試功能, 且支持gdb, 用它調(diào)試內(nèi)核會(huì)很方便.

(文章中大部分命令的運(yùn)行需要root權(quán)限,以sudo方式運(yùn)行)

1.1 構(gòu)建磁盤(pán)鏡像

Shell代碼

dd if=/dev/zero of=hd0.img

count=$((63*16*100))

用這個(gè)命令可以構(gòu)建一個(gè)50MB左右的磁盤(pán)鏡像, 輸出結(jié)果如下:

100800+0 records in

100800+0 records out

bytes (52 MB) copied, 0.s, 70.3

MB/s

注意count必須為63*16的倍數(shù), 否則bochs識(shí)別硬盤(pán)會(huì)有問(wèn)題.

1.2 掛載磁盤(pán)鏡像

Shell代碼

losetup /dev/loop0 hd0.img

這個(gè)命令可以將文件綁定到一個(gè)loop設(shè)備. 如果/dev/loop0不存悶首在, 可以嘗試 modprobe

loop.

然后進(jìn)行設(shè)備初始化:

Shell代碼

cfdisk -s63 -h16/dev/loop0

只創(chuàng)建一個(gè)主分區(qū)就可以. 寫(xiě)入后, 用命令fdisk檢查結(jié)果:

Shell代碼

fdisk -lu /dev/loop0

Disk /dev/loop0: 51 MB,bytes

16 heads, 63 sectors/track, 100 cylinders, total

sectors

Units = sectors of 1 * 512 = 512 bytes

Disk identifier: 0x

Device Boot Start End Blocks Id System

/dev/loop0p368+ 83 Linux

將分區(qū)1掛載到/dev/loop1.

Shell代碼

losetup /dev/loop1 hd0.img -o

$((63*512))

格式化/dev/loop1為ext3格式.

Shell代碼

mkfs.ext3 /dev/loop1

在mnt下創(chuàng)建img目錄, 做以后維護(hù)用.

Shell代碼

mkdir -p /mnt/img

將loop1掛載到/mnt/img

Shell代碼

mount /dev/loop1 /mnt/img/

安裝引導(dǎo)程序. 因?yàn)槲铱駸醿A向于模塊化架構(gòu), 所以選擇GRUB2.

本文以grub-1.97~beta3為示例,

讀者可自行安裝其他的引導(dǎo)系統(tǒng)如lilo.

Shell代碼

mkdir /mnt/img/boot

cp -r /usr/lib/grub/i386-pc/

/mnt/img/boot/grub

生成一個(gè)core.img, biosdisk負(fù)責(zé)讀取磁盤(pán), part_msdos負(fù)責(zé)處理MBR,

ext2負(fù)責(zé)讀取ext3分區(qū).

Shell代碼

cd /mnt/img/boot/grub/

grub-mkimage -O i386-pc -o core.img biosdisk part_msdos

ext2

Shell代碼

ls -lh core.img

-rw-r–r–1 root root 25K Sep2114:28

core.img

只有區(qū)區(qū)的25K.. 里面甚至還包含一個(gè)小的應(yīng)急shell, 不過(guò)作用不大.

安裝grub2到(hd0), 根目錄在(hd0,1)

Shell代碼

echo”(hd0) /dev/loop0″ >

./device.map

grub-setup -m ./device.map -d /mnt/img/boot/grub/ -r

‘(hd0,1)’ ‘(hd0)’

檢查一下安裝成果:

Shell代碼

hexdump -C /dev/loop0 | less

如果你能看到:

Shell代碼

d e8 2e00 cd18 eb

fe65|}…….GRUB .Ge|

f 6d6973 6b|om.Hard

Disk.Rea|

就說(shuō)明安裝成功.

清理一下.

Shell代碼

cd

umount /mnt/img

losetup -d /dev/loop1

losetup -d /dev/loop0

1.3 啟動(dòng)測(cè)試.

給上面的hd0.img配一個(gè)bochsrc文件, 可以拿bochs示例dlxlinux的配置文件來(lái)改,

只需將硬盤(pán)換為:

Shell代碼

ata0-master: type=disk, path=”hd0.img”, cylinders=100,

heads=16, spt=63

然后啟動(dòng)Bochs, 順利的話(huà), 你能看到傳說(shuō)中的grub2 shell.

2. 從啟動(dòng)到保護(hù)模式.

為我們的bochs虛擬機(jī)編譯一個(gè)內(nèi)核. 不必太復(fù)雜,

目前我們只關(guān)心啟動(dòng)部分.

2.1 安裝內(nèi)核

退出bochs, 掛載hd0.img:

Shell代碼

mount hd0.img /mnt/img/ -o

loop,offset=$((63*512))

拷貝bzImage.

Shell代碼

cp /usr/src/linux/arch/i386/boot/bzImage

/mnt/img/boot/vmlinuz-3.0.00

這兩個(gè)步驟可以放到內(nèi)核的Makefile中, 以后每次編譯完成后,

自動(dòng)更新到hd0.img里.

然后將下列配置寫(xiě)到/mnt/img/boot/grub/grub.cfg

Shell代碼

# Timeout for menu

set timeout=10

# Set default boot entry as Entry0

set default=0

# Entry0- Load Linux kernel

menuentry”Linux-3.0.00″{

set root=(hd0,1)

linux

/boot/vmlinuz-3.0.00root=/dev/hda1

關(guān)于linux怎么啟動(dòng)內(nèi)核的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

創(chuàng)新互聯(lián)-老牌IDC、云計(jì)算及IT信息化服務(wù)領(lǐng)域的服務(wù)供應(yīng)商,業(yè)務(wù)涵蓋IDC(互聯(lián)網(wǎng)數(shù)據(jù)中心)服務(wù)、云計(jì)算服務(wù)、IT信息化、AI算力租賃平臺(tái)(智算云),軟件開(kāi)發(fā),網(wǎng)站建設(shè),咨詢(xún)熱線(xiàn):028-86922220


當(dāng)前標(biāo)題:Linux開(kāi)機(jī)啟動(dòng),如何啟動(dòng)內(nèi)核?(linux怎么啟動(dòng)內(nèi)核)
瀏覽地址:http://www.5511xx.com/article/cdjiidc.html