在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

又一位純手工打造CPU的牛人 匯編語言實(shí)現(xiàn)類Unix系統(tǒng)!

GReq_mcu168 ? 來源:安富萊電子 ? 作者:安富萊電子 ? 2021-03-18 11:00 ? 次閱讀

硬件設(shè)計(jì)

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

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

最早效果:

RAM模塊已完成:

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

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

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

完成視頻輸出電路:

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

GR8NIX是受Unix啟發(fā)的操作系統(tǒng),Unix是1970年代發(fā)布的簡(jiǎn)單多用戶,多任務(wù)的操作系統(tǒng)。基于unix的思想的現(xiàn)代操作系統(tǒng)包括Linux, MacOS和Android等。GR8CPU Rev3用匯編語言編寫,內(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í)行與位置無關(guān)(動(dòng)態(tài)應(yīng)用程序加載)。

但是,GR8NIX并不完美,由于硬件限制,GR8NIX無法:

(1)保護(hù)內(nèi)存免受進(jìn)程侵害。

(2)從嘗試運(yùn)行無效指令中恢復(fù)。

(3)可靠地防止進(jìn)程退出后發(fā)生內(nèi)存泄漏。

實(shí)現(xiàn)了動(dòng)態(tài)內(nèi)存管理后,開始文件系統(tǒng)的制作,實(shí)現(xiàn)從磁盤中加載文件:

在視頻展示中,大家可以看到gr8nix變得栩栩如生,它成功加載并運(yùn)行了一個(gè)Shell程序,該程序又加載并運(yùn)行了大家想要的任何其他程序。

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

此后,Exec調(diào)用thread_launch,這是一種用于準(zhǔn)備啟動(dòng)線程的方法。Exec通過向過程中添加一些原始數(shù)據(jù)來完成:用戶ID,指向分配的內(nèi)存指針,運(yùn)行的命令行以及工作目錄等等。

編輯:jq


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23319

    瀏覽量

    661776
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10885

    瀏覽量

    212320
  • ALU
    ALU
    +關(guān)注

    關(guān)注

    0

    文章

    33

    瀏覽量

    13113

原文標(biāo)題:厲害了!又一位純手工打造CPU的牛人,并且匯編語言實(shí)現(xiàn)類Unix系統(tǒng),支持文件系統(tǒng)

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    EE-128:C語言中的DSP:從C調(diào)用匯編成員函數(shù)

    電子發(fā)燒友網(wǎng)站提供《EE-128:C語言中的DSP:從C調(diào)用匯編成員函數(shù).pdf》資料免費(fèi)下載
    發(fā)表于 01-07 13:48 ?0次下載
    EE-128:C<b class='flag-5'>語言</b>中的DSP:從C調(diào)用<b class='flag-5'>匯編</b><b class='flag-5'>類</b>成員函數(shù)

    TMS320C6000匯編語言工具v7.4用戶指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000匯編語言工具v7.4用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-30 16:42 ?0次下載
    TMS320C6000<b class='flag-5'>匯編語言</b>工具v7.4用戶指南

    TMS320C6000匯編語言工具 v8.3.x

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000匯編語言工具 v8.3.x.pdf》資料免費(fèi)下載
    發(fā)表于 11-07 10:00 ?0次下載
    TMS320C6000<b class='flag-5'>匯編語言</b>工具 v8.3.x

    ARM匯編語言工具

    電子發(fā)燒友網(wǎng)站提供《ARM匯編語言工具.pdf》資料免費(fèi)下載
    發(fā)表于 11-06 09:12 ?0次下載
    ARM<b class='flag-5'>匯編語言</b>工具

    TMS320C28x匯編語言工具

    電子發(fā)燒友網(wǎng)站提供《TMS320C28x匯編語言工具.pdf》資料免費(fèi)下載
    發(fā)表于 11-01 09:32 ?0次下載
    TMS320C28x<b class='flag-5'>匯編語言</b>工具

    RISC-V匯編語言

    、導(dǎo)言 從 C 程序翻譯成為可以在計(jì)算機(jī)上執(zhí)行的機(jī)器語言程序的四個(gè)經(jīng)典步驟。這章的內(nèi)容包括了后三個(gè)步驟,不過我們要從匯編語言在 RISC-V 函數(shù)調(diào)用規(guī)范中的作用開始說起。 上圖從
    發(fā)表于 08-19 18:07

    如何用C語言實(shí)現(xiàn)高效查找(二分法)

    今天給分享下使用C語言實(shí)現(xiàn)二分算法,主要包含以下幾部分內(nèi)容:二分查找算法介紹二分查找算法使用場(chǎng)景二分查找算法代碼實(shí)現(xiàn)二分查找算法實(shí)現(xiàn)過程用C語言實(shí)
    的頭像 發(fā)表于 06-04 08:04 ?1201次閱讀
    如何用C<b class='flag-5'>語言實(shí)現(xiàn)</b>高效查找(二分法)

    使用C語言實(shí)現(xiàn)的CRC計(jì)算單元的例子

    使用C語言實(shí)現(xiàn)的CRC計(jì)算單元的例子
    的頭像 發(fā)表于 05-16 16:16 ?1027次閱讀

    尋找一位編程員

    尋找一位編程員。請(qǐng)法郵件 j_helmut@163.com
    發(fā)表于 04-02 13:34

    請(qǐng)問在STM32CubeIDE下如何嵌入匯編語言代碼?

    在STM32CubeIDE下如何嵌入匯編語言代碼??
    發(fā)表于 03-25 06:56

    C語言實(shí)現(xiàn)Web參數(shù)傳遞

    電子發(fā)燒友網(wǎng)站提供《C語言實(shí)現(xiàn)Web參數(shù)傳遞.docx》資料免費(fèi)下載
    發(fā)表于 03-24 09:14 ?2次下載

    計(jì)算機(jī)最核心的——CPU

    CPU的四個(gè)結(jié)構(gòu)中,寄存器的重要性遠(yuǎn)遠(yuǎn)高于其余三個(gè),為什么這么說?因?yàn)槌绦蛲ǔJ前鸭拇嫫髯鳛閷?duì)象來進(jìn)行描述的。而說到寄存器,就不得不說到匯編語言,說到匯編語言,就不得不說到高級(jí)語言
    發(fā)表于 03-13 14:04 ?2023次閱讀
    計(jì)算機(jī)最核心的——<b class='flag-5'>CPU</b>

    【RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】匯編語言和擴(kuò)展指令集

    【RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】匯編語言和擴(kuò)展指令集 匯編語言 將C語言翻譯成可執(zhí)行的機(jī)器語言的重要步驟包括編譯過程,匯編過程,鏈
    發(fā)表于 02-03 13:29

    汽車ECU編程是單片機(jī)C語言還是匯編語言

    汽車ECU編程是單片機(jī)C語言嗎?還是匯編語言
    發(fā)表于 01-26 06:08

    C語言能夠實(shí)現(xiàn)單片機(jī)功能,為什么還要使用匯編呢?

    C語言能夠實(shí)現(xiàn)單片機(jī)功能,為什么還要使用匯編呢? C語言種高級(jí)編程語言,它具有跨平臺(tái)、可移植
    的頭像 發(fā)表于 01-15 14:59 ?1105次閱讀
    主站蜘蛛池模板: 六月色婷婷| 亚洲一区二区中文| 欧美一区二区三区黄色| 在线视频亚洲欧美| 在线天堂中文在线资源网| 欧美精品综合一区二区三区| 国产精品久久自在自2021| 视色4setv.com| 精品在线一区二区三区| 免费一级特黄特色大片在线| 婷婷色婷婷| 李丽莎尤物福利视频| 男人的视频网站| 国产伦精品一区二区免费| 人人干天天操| 亚洲精品系列| 超大乳抖乳露双乳视频| 久久精品成人免费网站| 欧美性狂猛xxxxxbbbbb| 日韩不卡毛片| 色在线网站免费观看| 淫性视频| 99热久久久久久久免费观看| 男人j进人女人j 的视频| 182.t v香蕉人人网站| 啪啪免费视频网站| 欧美成人自拍视频| 日本一二区视频| 亚洲一区免费视频| 中文字幕在线乱码免费毛片| 男女性生动态免费视频| 亚洲成熟| 五月婷六月婷婷| 欧美高清免费一级在线| 国产va免费精品观看| 丁香婷五月| 欧美亚洲韩国国产综合五月天| 天天操天天射天天插| 天天天天天天天操| 天天干天天爽| 欧美女同网站|