最新文章專題視頻專題關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
范起名字大全女孩 護(hù)士長(zhǎng)助理競(jìng)聘演講稿5分鐘 美麗的臨夏東郊公園作文400字 如何在《口袋妖怪火紅》中抓火焰鳥 八年級(jí)上冊(cè)所有英語作文 初二下學(xué)期的英語作文 如何注銷Uber賬戶 中考作文滿分范文及賞析 幼兒園頂崗實(shí)習(xí)自我鑒定 如何在iOS設(shè)備上創(chuàng)建微信帳戶 工人黨員自我評(píng)價(jià) 實(shí)習(xí)生自我鑒定范本 如何查看活動(dòng)網(wǎng)絡(luò)連接(Windows系統(tǒng)) 4種方法來查看活動(dòng)網(wǎng)絡(luò)連接(Windows系統(tǒng)) 如何查看活動(dòng)網(wǎng)絡(luò)連接(Windows系統(tǒng)) 4種方法來查看活動(dòng)網(wǎng)絡(luò)連接(Windows系統(tǒng)) 關(guān)于助教的實(shí)習(xí)報(bào)告總結(jié) 三分鐘自我介紹模板 如何在PC或MAC上用Discord播放音樂 金字旁適合女孩取名字的字 吳姓女孩名大全 鼠年孩子小名 商鋪?zhàn)赓U合同中介版 魯濱遜漂流記讀后感三百字六年級(jí) 如何橋接擴(kuò)音器 屬兔男名字大全 屬鼠姓王男孩取名 西游記讀后感作文450字五年級(jí) 海底兩萬里讀后感初一600字 如何應(yīng)用微軟Word 制作簡(jiǎn)歷 3種方法來應(yīng)用微軟Word 制作簡(jiǎn)歷 3種方法來應(yīng)用微軟Word 制作簡(jiǎn)歷 如何應(yīng)用微軟Word 制作簡(jiǎn)歷 紅樓夢(mèng)的讀后感優(yōu)秀作文 我的樂園400字四年級(jí)優(yōu)秀作文 如何更改你的Apple ID 高三班主任致家長(zhǎng)的一封信 兒子給媽媽一封信 男孩好聽的名字姓劉 如何在幻燈片里插入視頻 工人辭職申請(qǐng)書怎么寫 美麗的濱江公園作文
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

如何建立一個(gè)電腦操作系統(tǒng)

來源:懂視網(wǎng) 責(zé)編:小OO 時(shí)間:2022-08-30 12:33:29
文檔

如何建立一個(gè)電腦操作系統(tǒng)

1、開始之前學(xué)會(huì)編程。2、選擇你想把你的操作系統(tǒng)搭載到什么媒體。3、決定你想讓你的操作系統(tǒng)干什么。4、選擇你的操作系統(tǒng)支持哪種處理器平臺(tái)。5、選擇是否由自己從頭做起,還是按照現(xiàn)有的核心自己往上建立。6、選擇是否要使用自己的引導(dǎo)裝載程序或做一個(gè)預(yù)創(chuàng)建的程序,比如統(tǒng)一引導(dǎo)裝載程序 (GRUB)。7、決定用哪種程序語言。8、選擇你的應(yīng)用程序界面(API)。9、決定你的設(shè)計(jì)。10、考慮用團(tuán)隊(duì)發(fā)展和工作。11、不要完全擦除你的硬盤。12、從小地方開始。13、保存最新工作源的備份。14、考慮用虛擬機(jī)測(cè)試你的新操作系統(tǒng)。15、發(fā)布一個(gè)"候補(bǔ)版本",這樣可以讓用戶報(bào)告給你操作系統(tǒng)的潛在問題。16、一個(gè)操作系統(tǒng)可以是用戶友好型的,因此增添一點(diǎn)用戶友好特點(diǎn),把這些整合進(jìn)你的設(shè)計(jì)。
推薦度:
導(dǎo)讀1、開始之前學(xué)會(huì)編程。2、選擇你想把你的操作系統(tǒng)搭載到什么媒體。3、決定你想讓你的操作系統(tǒng)干什么。4、選擇你的操作系統(tǒng)支持哪種處理器平臺(tái)。5、選擇是否由自己從頭做起,還是按照現(xiàn)有的核心自己往上建立。6、選擇是否要使用自己的引導(dǎo)裝載程序或做一個(gè)預(yù)創(chuàng)建的程序,比如統(tǒng)一引導(dǎo)裝載程序 (GRUB)。7、決定用哪種程序語言。8、選擇你的應(yīng)用程序界面(API)。9、決定你的設(shè)計(jì)。10、考慮用團(tuán)隊(duì)發(fā)展和工作。11、不要完全擦除你的硬盤。12、從小地方開始。13、保存最新工作源的備份。14、考慮用虛擬機(jī)測(cè)試你的新操作系統(tǒng)。15、發(fā)布一個(gè)"候補(bǔ)版本",這樣可以讓用戶報(bào)告給你操作系統(tǒng)的潛在問題。16、一個(gè)操作系統(tǒng)可以是用戶友好型的,因此增添一點(diǎn)用戶友好特點(diǎn),把這些整合進(jìn)你的設(shè)計(jì)。
操作系統(tǒng)就是讓人與電腦硬件進(jìn)行互動(dòng)。操作系統(tǒng)是由成百上千條代碼構(gòu)成的,通常由C、C++和集成程序語言編寫而成。

1、開始之前學(xué)會(huì)編程。集成語言是必須的。另一種補(bǔ)充的低級(jí)語言,如C語言也是強(qiáng)力推薦的。

2選擇你想把你的操作系統(tǒng)搭載到什么媒體。可以是CD驅(qū)動(dòng)、DVD驅(qū)動(dòng)、閃盤驅(qū)動(dòng)、硬盤驅(qū)動(dòng),或是另一臺(tái)電腦驅(qū)動(dòng)。

3、決定你想讓你的操作系統(tǒng)干什么。是否整個(gè)操作系統(tǒng)都配有圖形用戶界面(GUI)或是更加動(dòng)漫式的。開始之前你需要了解你做的是哪個(gè)方向。

4、選擇你的操作系統(tǒng)支持哪種處理器平臺(tái)。 AI-32 和x86_64 是最常用的個(gè)人電腦平臺(tái),你最好選擇它們。

5、選擇是否由自己從頭做起,還是按照現(xiàn)有的核心自己往上建立。比如,Linux核心就是設(shè)計(jì)給那些想要在其之上建立他們自己的Linux版本的人的。

6、選擇是否要使用自己的引導(dǎo)裝載程序或做一個(gè)預(yù)創(chuàng)建的程序,比如統(tǒng)一引導(dǎo)裝載程序 (GRUB)。由于編寫你的引導(dǎo)裝載程序需要擴(kuò)展對(duì)硬件和BIOS的知識(shí),因此要把它推到實(shí)際的核心編程之后。

7決定用哪種程序語言。盡管用如Pascal或BASIC語言也可以創(chuàng)建操作系統(tǒng),但你最好還是用C語言或集成語言。集成語言絕對(duì)是必須的,操作系統(tǒng)至關(guān)重要的部分需要它。另一方面,C++語言也是關(guān)鍵的,但它需要完整的操作系統(tǒng)來運(yùn)行。要用C或C++代碼編寫操作系統(tǒng),當(dāng)然,你需要使用一個(gè)編譯程序。因此,不論這些指南是軟件附帶的,還是可以從經(jīng)銷商的網(wǎng)上下載,你都應(yīng)該閱讀用戶指南/手冊(cè)/文檔,來選擇你的C/C++編譯程序。你也需要了解關(guān)于編譯程序的很多復(fù)雜問題,對(duì)于C++,你應(yīng)該了解編譯程序的識(shí)別編碼模式和它的ABI。你需要懂多種可執(zhí)行的格式(ELF、PE、COFF、純二進(jìn)制等等,并且要懂得Windows專有的格式,PE (.exe)是受版權(quán)保護(hù)的。

8選擇你的應(yīng)用程序界面(API)。一個(gè)好的API選擇就是POSIX,因?yàn)樗呀?jīng)編譯好了。所有的Unix系統(tǒng)都部分支持POSIX,因此,把Unix程序植入你的操作系統(tǒng)并不重要。

9決定你的設(shè)計(jì)。有單片核心和微核心可供選擇。單片核心可執(zhí)行核心上的一切服務(wù),而微核心是一個(gè)小的核心,其結(jié)合了用戶后臺(tái)進(jìn)程,進(jìn)程可以執(zhí)行服務(wù)。通常而言,單片核心更快,但是微核心故障隔離和可靠性更好。

10考慮用團(tuán)隊(duì)發(fā)展和工作。這種方式可以花更少的時(shí)間解決更多的問題,而且可以更快造出更好的操作系統(tǒng)。br>

11、不要完全擦除你的硬盤。記住,擦除你的硬盤會(huì)永久清除你的所有數(shù)據(jù)!用GRUB或其他啟動(dòng)管理器來用另一個(gè)操作系統(tǒng)做雙啟動(dòng)系統(tǒng),直到你自己的操作系統(tǒng)完全可以用了。

12、從小地方開始。在進(jìn)行內(nèi)存管理和多進(jìn)程任務(wù)之前,從小地方開始,如現(xiàn)實(shí)文本和中斷。

13、保存最新工作源的備份。這樣可以預(yù)防你當(dāng)前的操作系統(tǒng)版本或是你當(dāng)前的工作出問題。如果你的電腦死機(jī)且無法啟動(dòng)了,用副本進(jìn)行工作是個(gè)好主意,這樣就可以排除故障了。

14考慮用虛擬機(jī)測(cè)試你的新操作系統(tǒng)。不要每次做出修改后就重啟電腦,而是要把文件從你的電腦傳輸?shù)教摂M機(jī)上,你可以用虛擬機(jī)應(yīng)用來運(yùn)行你的操作系統(tǒng),同時(shí)當(dāng)前的操作系統(tǒng)也是運(yùn)行的。VM應(yīng)用包括VMWare (它也有一個(gè)免費(fèi)使用的服務(wù)器產(chǎn)品),另一個(gè)開源的選擇就是Bochs,微軟虛擬PC(不能與Linux兼容),還有xVM VirtualBox。

15、發(fā)布一個(gè)"候補(bǔ)版本",這樣可以讓用戶報(bào)告給你操作系統(tǒng)的潛在問題。

16一個(gè)操作系統(tǒng)可以是用戶友好型的,因此增添一點(diǎn)用戶友好特點(diǎn),把這些整合進(jìn)你的設(shè)計(jì)。

小提示

如果你想讓你的系統(tǒng)可實(shí)行,確保把安全特征作為你最優(yōu)先的選擇。

所有的建構(gòu)都完成后,選擇你是否需要發(fā)布代碼為開源代碼,還是保留專利。

不要為了學(xué)習(xí)編程而開始做一個(gè)操作系統(tǒng)。如果你還不了解C、C++、Pascal或某些其他適合的語言,包括指示器處理,低級(jí)字節(jié)處理,字節(jié)轉(zhuǎn)換,內(nèi)聯(lián)集成語言等,那么你還沒有準(zhǔn)備好建立操作系統(tǒng)。

使用網(wǎng)頁,比如OSDev 和OSDever可以幫助你建立自己的操作系統(tǒng)。請(qǐng)記住,OSDev.org社區(qū)更傾向于讓你使用他們的wiki,而不是加入其論壇。如果你決定加入論壇,這有一些預(yù) 備知識(shí):你需要精通C或C++,還有x86集成語言。你也要了解一般的和復(fù)雜的程序概念,如Linked Lists、Queues等等。 OSDev社區(qū)按照其規(guī)則明確表示,此論壇不適合那些臨時(shí)程序員。如果你想構(gòu)建一個(gè)操作系統(tǒng),也并不是非得要求你是個(gè)編程大神。但你也需要閱讀你所選的處理器體系結(jié)構(gòu)的處理器手冊(cè)。不論是x86(因特爾)、ARM、MIPS還是PPC等等。處理器體系手冊(cè)很容易用谷歌搜索引擎找到(“因特爾手冊(cè)”,“ARM手冊(cè)”等等)。不要加入OSDev.org論壇問一些很簡(jiǎn)單的問題。通常的回答就是“去閱讀他媽的手冊(cè)”。你應(yīng)該去閱讀維基百科,里面還有你想使用的多種工具手冊(cè)。

如果你想做得簡(jiǎn)單,考慮下Linux 版本,比如Fedora Revisor、Custom Nimble X、Puppy Remaster、PCLinuxOS mklivecd或SUSE Studio 和SUSE KIWI。然而,你創(chuàng)建的操作系統(tǒng)屬于提供服務(wù)器的公司(盡管你有權(quán)力免費(fèi)發(fā)布,并按照你想的在GPL下修改、運(yùn)行系統(tǒng))。

檢查潛在的問題和其他漏洞。這些都會(huì)影響你的操作系統(tǒng)設(shè)計(jì)。

建立一個(gè)新的分區(qū)用于編寫操作系統(tǒng)是個(gè)好選擇。

警告

你在兩周內(nèi)就會(huì)有一個(gè)完整的系統(tǒng)。做一個(gè)可以啟動(dòng)的操作系統(tǒng),這就是一個(gè)很酷的東西。

粗心大意地把操作系統(tǒng)寫入硬盤可能導(dǎo)致硬盤完全崩潰。小心。

不要期待一個(gè)合適的操作系統(tǒng)很容易建立。有很多相互依賴的復(fù)雜問題。比如說,要做一個(gè)操作系統(tǒng),需要處理多種處理器,你的內(nèi)存管理器必須要“鎖定”機(jī)器,防止多進(jìn)程處理器從同樣資源同時(shí)進(jìn)入。用于此的“鎖定”需要在進(jìn)程表中出現(xiàn),從而確保在任何一個(gè)時(shí)刻都只有一個(gè)進(jìn)程進(jìn)入關(guān)鍵資源,而其他進(jìn)程則在等待。但是進(jìn)程表取決于一個(gè)內(nèi)存管理器。這就是死機(jī)的一種情況。沒有什么標(biāo)準(zhǔn)方法來解決這類問題;每一個(gè)操作系統(tǒng)程序都需要足夠的技術(shù)來解決它的問題。

如果你做了一些沒頭腦的事情,比如把隨機(jī)字節(jié)寫入了隨機(jī)I/O接口,你就會(huì)使得系統(tǒng)死機(jī),而且可能(理論上)燒掉你的硬盤。

額外的資源

手冊(cè): Linux From Scratch

引導(dǎo)裝載程序: GRUB

虛擬機(jī)應(yīng)用: Bochs、VM Ware、XM Virtual Box

處理器手冊(cè): Intel manuals

操作系統(tǒng)建立網(wǎng)站: OSDev、OSDever

你需要準(zhǔn)備

一臺(tái)電腦

一個(gè)用來建構(gòu)結(jié)構(gòu)體系的CPU

對(duì)于虛擬機(jī)器的足夠的內(nèi)存(RAM)

一個(gè)“主”操作系統(tǒng)(在匯編源代碼的最初階段,用來建構(gòu)源代碼并打包程序,最終你自己的操作系統(tǒng)將成為主系統(tǒng))

句法潤(rùn)飾代碼編輯器(如果你沒有集成發(fā)展環(huán)境,就用它)

一個(gè)編譯程序

一個(gè)CD/DVD 驅(qū)動(dòng)

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:0731-84117792 E-MAIL:11247931@qq.com

文檔

如何建立一個(gè)電腦操作系統(tǒng)

1、開始之前學(xué)會(huì)編程。2、選擇你想把你的操作系統(tǒng)搭載到什么媒體。3、決定你想讓你的操作系統(tǒng)干什么。4、選擇你的操作系統(tǒng)支持哪種處理器平臺(tái)。5、選擇是否由自己從頭做起,還是按照現(xiàn)有的核心自己往上建立。6、選擇是否要使用自己的引導(dǎo)裝載程序或做一個(gè)預(yù)創(chuàng)建的程序,比如統(tǒng)一引導(dǎo)裝載程序 (GRUB)。7、決定用哪種程序語言。8、選擇你的應(yīng)用程序界面(API)。9、決定你的設(shè)計(jì)。10、考慮用團(tuán)隊(duì)發(fā)展和工作。11、不要完全擦除你的硬盤。12、從小地方開始。13、保存最新工作源的備份。14、考慮用虛擬機(jī)測(cè)試你的新操作系統(tǒng)。15、發(fā)布一個(gè)"候補(bǔ)版本",這樣可以讓用戶報(bào)告給你操作系統(tǒng)的潛在問題。16、一個(gè)操作系統(tǒng)可以是用戶友好型的,因此增添一點(diǎn)用戶友好特點(diǎn),把這些整合進(jìn)你的設(shè)計(jì)。
推薦度:
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top