日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 21ic電子網(wǎng)
[導(dǎo)讀]硬件設(shè)計(jì): GR8CPU是在面包板上構(gòu)建功能齊全的計(jì)算機(jī)。


又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

硬件設(shè)計(jì):
GR8CPU是在面包板上構(gòu)建功能齊全的計(jì)算機(jī)。第一個(gè)版本GR8CPU Rev2擁有600多條電線,74個(gè)集成電路和79個(gè)LED燈。它是一個(gè)8位架構(gòu),考慮了簡(jiǎn)單性和處理能力。CPU可以訪問(wèn)256字節(jié)的RAM,已經(jīng)為其編寫了功能齊全的Tic-Tac-Toe游戲。

到目前為止,正在構(gòu)建第二個(gè)GR8CPU Rev3。有很多有趣的工作要做:具有65536字節(jié)的內(nèi)存,改進(jìn)的算法和設(shè)計(jì)更高的速度,該CPU是有史以來(lái)最復(fù)雜的面包板CPU。

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

最早效果:

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

RAM模塊已完成:

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

設(shè)計(jì)ALU:

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

完成ALU設(shè)計(jì):

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

視頻卡設(shè)計(jì):

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

完成視頻輸出電路:

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

類Unix系統(tǒng)設(shè)計(jì)

GR8NIX是受Unix啟發(fā)的操作系統(tǒng),Unix是1970年代發(fā)布的簡(jiǎn)單多用戶,多任務(wù)的操作系統(tǒng)?;趗nix的思想的現(xiàn)代操作系統(tǒng)包括Linux, MacOS和Android等。GR8CPU Rev3用匯編語(yǔ)言編寫,內(nèi)核由2000行匯編實(shí)現(xiàn),5KB代碼:

(1)多線程支持32個(gè)并發(fā)線程。
(2)理論上不受限制的運(yùn)行程序數(shù)量。
(3)動(dòng)態(tài)內(nèi)存分配,當(dāng)前大小最大為8 KB。
(4)真正的程序執(zhí)行與位置無(wú)關(guān)(動(dòng)態(tài)應(yīng)用程序加載)。

但是,GR8NIX并不完美,由于硬件限制,GR8NIX無(wú)法:
(1)保護(hù)內(nèi)存免受進(jìn)程侵害。
(2)從嘗試運(yùn)行無(wú)效指令中恢復(fù)。
(3)可靠地防止進(jìn)程退出后發(fā)生內(nèi)存泄漏。
實(shí)現(xiàn)了動(dòng)態(tài)內(nèi)存管理后,開始文件系統(tǒng)的制作,實(shí)現(xiàn)從磁盤中加載文件:

又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)
在視頻展示中,大家可以看到gr8nix變得栩栩如生,它成功加載并運(yùn)行了一個(gè)Shell程序,該程序又加載并運(yùn)行了大家想要的任何其他程序。

首先,Exec負(fù)責(zé)加載程序并運(yùn)行它們。Exec首先進(jìn)行一些完整性檢查:文件是否存在?它是程序文件嗎?這是有效的嗎?接下來(lái),Exec通過(guò)檢查每個(gè)條目并將其偏移量添加到其長(zhǎng)度中來(lái)查找可執(zhí)行文件的長(zhǎng)度。Exec找到的長(zhǎng)度是這些計(jì)算出的最大長(zhǎng)度。

此后,Exec調(diào)用thread_launch,這是一種用于準(zhǔn)備啟動(dòng)線程的方法。Exec通過(guò)向過(guò)程中添加一些原始數(shù)據(jù)來(lái)完成:用戶ID,指向分配的內(nèi)存指針,運(yùn)行的命令行以及工作目錄等等。
又一位純手工打造CPU的牛人,并且匯編語(yǔ)言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)



作者:安富萊電子,排版:曉宇

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

21ic電子網(wǎng)

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉