自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

簡單操作系統(tǒng) FreeDOS 如何啟動(dòng)

開源
概述你的計(jì)算機(jī)如何引導(dǎo)和啟動(dòng)一個(gè)像 FreeDOS 這樣的簡單操作系統(tǒng)。

概述你的計(jì)算機(jī)如何引導(dǎo)和啟動(dòng)一個(gè)像 FreeDOS 這樣的簡單操作系統(tǒng)。

在使用 DOS 計(jì)算機(jī)的過程中,我很欣賞的一點(diǎn)是,引導(dǎo)過程相對容易理解。在 DOS 中沒有太多的變動(dòng)組件。而今天,我想和大家分享一下電腦是如何引導(dǎo)和啟動(dòng)像 FreeDOS 這樣的簡單操作系統(tǒng)的概況。

初始引導(dǎo)

當(dāng)你打開計(jì)算機(jī)的電源時(shí),系統(tǒng)會(huì)進(jìn)行一些自我檢查,如驗(yàn)證內(nèi)存和其他組件。這被稱為開機(jī)自檢Power On Self Test(POST)。POST 之后,計(jì)算機(jī)使用一個(gè)硬編碼指令,告訴它在哪里找到加載操作系統(tǒng)的指令。這就是“引導(dǎo)加載程序boot loader”,通常它將試圖找到硬盤上的主引導(dǎo)記錄Master Boot Record(MBR)。然后,MBR 加載主操作系統(tǒng),在這里就是 FreeDOS。

這個(gè)定位一個(gè)信息以便計(jì)算機(jī)能夠加載操作系統(tǒng)的下一個(gè)部分的過程被稱為“引導(dǎo)bootstrapping”,來自于“通過你自己的努力振作起來picking yourself up by your bootstraps”的古老說法。正是從這個(gè)用法中,我們采用了“引導(dǎo)boot”一詞來表示啟動(dòng)你的計(jì)算機(jī)。

內(nèi)核

當(dāng)計(jì)算機(jī)加載 FreeDOS 內(nèi)核時(shí),內(nèi)核所做的第一件事就是識(shí)別用戶所表示要使用的任何參數(shù)。它被保存在一個(gè)叫做 FDCONFIG.SYS 的文件中,與內(nèi)核保存在同一個(gè)根目錄下。如果 FDCONFIG.SYS 不存在,那么 FreeDOS 的內(nèi)核就會(huì)尋找一個(gè)叫做 CONFIG.SYS 的替代文件。

如果你在 20 世紀(jì) 80 年代或 90 年代使用過 DOS,你可能對 CONFIG.SYS 文件很熟悉。從 1999 年起,F(xiàn)reeDOS 首先尋找 FDCONFIG.SYS,以防你的 DOS 系統(tǒng)與其他 DOS(如 MS-DOS)做了 雙啟動(dòng)。請注意,MS-DOS 只使用 CONFIG.SYS 文件。因此,如果你用同一個(gè)硬盤同時(shí)啟動(dòng) FreeDOS 和 MS-DOS,MS-DOS 使用 CONFIG.SYS 來配置自己,而 FreeDOS 則使用 FDCONFIG.SYS。這樣一來,雙方都可以使用自己的配置。

FDCONFIG.SYS 可以包含一些配置設(shè)置,其中之一是 SHELL= 或 SHELLHIGH=。任何一個(gè)都會(huì)指示內(nèi)核加載這個(gè)程序作為用戶的交互式 shell。

如果 FDCONFIG.SYS 和 CONFIG.SYS 都不存在,那么內(nèi)核就會(huì)假定幾個(gè)默認(rèn)值,包括在哪里找到 shell。如果你在啟動(dòng) FreeDOS 系統(tǒng)時(shí)看到 “Bad or missing Command Interpreter” 的信息,這意味著 SHELL= 或 SHELLHIGH= 指向了一個(gè)在你系統(tǒng)中不存在的 shell 程序。 

Bad or missing Command Interpreter

你可以通過查看 SHELL= 或 SHELLHIGH= 行來調(diào)試這個(gè)問題。如果做不到這一點(diǎn),請確保你在 FreeDOS 系統(tǒng)的根目錄下有一個(gè)名為 COMMAND.COM 的程序。它就是 shell,我接下來會(huì)講到它。

shell

在 DOS 系統(tǒng)中,“shell” 一詞通常是指一個(gè)命令行解釋器:一個(gè)交互式程序,它從用戶那里讀取指令,然后執(zhí)行它們。在這里,F(xiàn)reeDOS 的 shell 與 Linux 的 Bash shell 相似。

除非你用 SHELL= 或 SHELLHIGH= 要求內(nèi)核加載一個(gè)不同的 shell,否則 DOS 上的標(biāo)準(zhǔn)命令行 shell 被稱為 COMMAND.COM。當(dāng) COMMAND.COM 啟動(dòng)時(shí),它也尋找一個(gè)文件來配置自己。默認(rèn)情況下,COMMAND.COM 會(huì)在根目錄下尋找一個(gè)名為 AUTOEXEC.BAT 的文件。AUTOEXEC.BAT 是一個(gè)“批處理文件”,它包含一組啟動(dòng)時(shí)運(yùn)行的指令,大致類似于 Linux 上 Bash 啟動(dòng)時(shí)讀取的 ~/.bashrc “資源文件”。

你可以在 FDCONFIG.SYS 文件中用 SHELL= 或 SHELLHIGH= 改變 shell 以及 shell 的啟動(dòng)文件。FreeDOS 1.3 RC4 安裝程序?qū)⑾到y(tǒng)設(shè)置為讀取 FDAUTO.BAT 而不是 AUTOEXEC.BAT。這與內(nèi)核讀取另一個(gè)配置文件的原因相同;你可以在硬盤上用另一個(gè) DOS 雙啟動(dòng) FreeDOS。FreeDOS 將使用 FDAUTO.BAT 而 MS-DOS 將使用 AUTOEXEC.BAT。

如果沒有像 AUTOEXEC.BAT 這樣的啟動(dòng)文件,shell 將簡單地提示用戶輸入日期和時(shí)間。 

Without AUTOEXEC.BAT, the shell will prompt for date and time

就是這些了。當(dāng) FreeDOS 加載了內(nèi)核,而內(nèi)核也加載了 shell,F(xiàn)reeDOS 就準(zhǔn)備好讓用戶輸入命令了。

FreeDOS is ready for you to enter your first command 

 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2011-07-25 16:50:24

Windows安全模式

2022-02-24 08:30:24

操作系統(tǒng)CPU程序

2021-02-09 08:23:02

Linux操作系統(tǒng)

2010-04-20 17:24:42

Unix操作系統(tǒng)

2009-12-22 13:05:15

Linux sysfs

2010-03-05 16:47:11

Android操作系統(tǒng)

2010-04-23 13:55:24

定制Aix操作系統(tǒng)

2010-03-11 15:01:56

Ubuntu操作系統(tǒng)

2010-04-15 18:39:56

Unix操作系統(tǒng)

2009-02-17 16:07:29

Linux操作系統(tǒng)內(nèi)核啟動(dòng)參數(shù)

2009-12-09 17:25:19

Linux操作系統(tǒng)

2022-07-20 21:03:05

FreeDOS文本編輯器

2009-12-29 14:00:43

Ubuntu操作系統(tǒng)

2014-09-28 11:08:40

國產(chǎn)操作系統(tǒng)

2010-02-05 16:35:35

Android操作系統(tǒng)

2010-04-09 15:34:41

Unix操作系統(tǒng)

2009-12-23 09:34:51

Fedora VMne

2010-04-15 14:40:26

Unix操作系統(tǒng)

2010-03-02 16:51:59

Linux操作系統(tǒng)

2009-08-11 09:03:45

Windows 7系統(tǒng)啟動(dòng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)