一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

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

GReq_mcu168 ? 來(lái)源:安富萊電子 ? 作者:安富萊電子 ? 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可以訪問(wèn)256字節(jié)的RAM,已經(jīng)為其編寫(xiě)了功能齊全的Tic-Tac-Toe游戲。

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

最早效果:

RAM模塊已完成:

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

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

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

完成視頻輸出電路:

類(lèi)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ǔ)言編寫(xiě),內(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)存管理后,開(kāi)始文件系統(tǒng)的制作,實(shí)現(xiàn)從磁盤(pán)中加載文件:

在視頻展示中,大家可以看到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)行的命令行以及工作目錄等等。

編輯:jq


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

    關(guān)注

    242

    文章

    23840

    瀏覽量

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

    關(guān)注

    68

    文章

    11077

    瀏覽量

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

    關(guān)注

    0

    文章

    34

    瀏覽量

    13310

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    匯編語(yǔ)言教學(xué)中文資料

    電子發(fā)燒友網(wǎng)站提供《匯編語(yǔ)言教學(xué)中文資料.rar》資料免費(fèi)下載
    發(fā)表于 06-30 15:15 ?3次下載

    Windows環(huán)境下32匯編語(yǔ)言中文資料

    電子發(fā)燒友網(wǎng)站提供《Windows環(huán)境下32匯編語(yǔ)言中文資料.rar》資料免費(fèi)下載
    發(fā)表于 06-30 15:14 ?0次下載

    單片機(jī)原理及應(yīng)用

    本書(shū)全面系統(tǒng)地介紹了 MCS-51 系列單片機(jī)的基本結(jié)構(gòu)、工作原理及應(yīng)用技術(shù)。主要內(nèi)容包括:微型計(jì)算機(jī)的基礎(chǔ)知識(shí)、MCS-51 單片機(jī)的基本結(jié)構(gòu)、匯編語(yǔ)言和 C51 語(yǔ)言程序設(shè)計(jì)方法、中斷系統(tǒng)
    發(fā)表于 06-16 16:58

    單片機(jī)C語(yǔ)言實(shí)例(350+例)

    350+單片機(jī)C語(yǔ)言實(shí)例! 純分享帖,需要者可點(diǎn)擊附件免費(fèi)獲取完整資料~~~【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)第時(shí)間告知,刪除內(nèi)容!
    發(fā)表于 05-22 21:47

    Linux主要的性能有哪些?

    ? 什么是Linux? ? Linux是套自由傳播的類(lèi)Unix操作系統(tǒng),是個(gè)基于posix和unix
    的頭像 發(fā)表于 04-30 18:09 ?233次閱讀
    Linux主要的性能有哪些?

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

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

    ADS1194調(diào)試串口輸出,在定時(shí)間的轉(zhuǎn)換后數(shù)據(jù)會(huì)少一位輸出,為什么?

    調(diào)試的是ADS1194,每個(gè)/DRDY 接收轉(zhuǎn)換數(shù)據(jù)并通過(guò)串口發(fā)送到串口助手中,先調(diào)試的CH1~CH4 通道,使用的是內(nèi)部的Test_signal,增加了一位調(diào)試,即每進(jìn)次/DRDY,調(diào)試
    發(fā)表于 01-07 07:30

    TMS320C6000匯編語(yǔ)言工具v7.4用戶指南

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

    使用C語(yǔ)言實(shí)現(xiàn)函數(shù)模板

      用C語(yǔ)言能不能實(shí)現(xiàn)個(gè)通用的函數(shù),既能完成整數(shù)的相加,又能完成浮點(diǎn)數(shù)的相加?
    的頭像 發(fā)表于 11-09 11:38 ?946次閱讀

    TMS320C6000匯編語(yǔ)言工具 v8.3.x

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

    ARM匯編語(yǔ)言工具

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

    TMS320C28x匯編語(yǔ)言工具

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

    RISC-V匯編語(yǔ)言

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

    RISC-V 匯編語(yǔ)言程序的調(diào)試

    ,通過(guò)jr t0跳入。 模擬器執(zhí)行與調(diào)試 下面通過(guò)編譯為32的代碼來(lái)看下程序的執(zhí)行過(guò)程(由于程序不需要任何操作系統(tǒng)的支持,會(huì)容易跑偏,所以要用遠(yuǎn)程gdb進(jìn)行單條指令執(zhí)行,觀察寄存器的執(zhí)行情況
    發(fā)表于 07-19 16:27