iT邦幫忙

risc-v相關文章
共有 131 則文章
鐵人賽 Software Development DAY 20

技術 予焦啦!Golang 當中的訊號(signal)機制

予焦啦!正如 Golang 自己維護了記憶體管理機制(競技場、記憶體抽象層、垃圾回收、...)般,讓 ethanol 核心取用 RISC-V 硬體功能的部分可以...

鐵人賽 Software Development DAY 23

技術 予焦啦!實作基本排程

本節是以 Golang 上游 6a79f358069195e1cddb821e81fab956d9a0c7d1 為基準做的實驗 予焦啦!昨日我們觀察了 Go...

鐵人賽 Software Development DAY 9

技術 予焦啦!BSS 初始化

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!昨日不幸地卡在一個...

鐵人賽 Software Development DAY 16

技術 予焦啦!參數與環境變數

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!經過了第零章確保開發...

技術 Day-30 Switch Thread 中 lock 的設計,sleep 和 wakeup 概念

前言 前面我們看到了整個 Switch Thread 的運作,首先會有 Timer Interrupt 產生 trap,接著 yield() 會將 Proce...

鐵人賽 Software Development DAY 14

技術 予焦啦!Ethanol 記憶體映像規劃

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 本節所對應的修補當中,有些...

技術 予焦啦!結論與展望(一):Hoddarla 專案的過去、現在與未來

阮毋是喜愛虛華,阮只是環境來拖磨;人客若叫阮,風雨嘛著行,為伊唱出留戀的情歌。-- 流浪到淡水 終於進到結尾的部份了。過去三十天在鐵人賽官方規定的範疇內,筆...

鐵人賽 Software Development DAY 11

技術 DAY11: RISC-V: IMSIC(三)

tags: 鐵人賽 0.前言 今日繼續介紹 IMSIC 加油!! 1. CSRs for external interrupts via an IMSIC 軟體...

鐵人賽 Software Development DAY 13

技術 DAY13: RISC-V: APLIC(一)

tags: 鐵人賽 0. 前言 今日來介紹 APLIC ,究竟 APLIC 的用途意義是什麼呢?以及跟 PLIC 和 IMSIC 有何不同? 1. APLIC...

鐵人賽 Software Development DAY 20

技術 DAY20: RISC-V: Virtual Machines 的 interrupt

tags: 鐵人賽 0. 前言 今日來介紹 VM(virtual machine) 的 interrupt 簡介 當實作 hypervisor extensio...

技術 RISC-V究竟是甚麼呢?

RISC-V 是高效率、低消耗功率及低成本的微處理器核心,它以技術智慧財產權(IP)的方式,將 RISC-V 核心授權廠家以 OEM 附加周邊電路來發展各式各樣...

鐵人賽 Software Development DAY 16

技術 DAY16: RISC-V: APLIC(四)

tags: 鐵人賽 0. 前言 昨日已經介紹 Memory-mapped control region 前 16KB 的各種暫存器,今日我們來介紹 IDC 結構...

鐵人賽 Software Development DAY 14

技術 DAY14: RISC-V: APLIC(二)

tags: 鐵人賽 0. 前言 昨日介紹 APLIC 基本功能與 interrupt source 範圍,今日我們繼續囉~ 1. Hart index numb...

鐵人賽 Software Development DAY 28

技術 予焦啦!附錄:旅途拾貝

今天是 Hoddarla 系列文中的附錄第 0 篇。筆者在這一年半的準備期當中送了兩個 patch 給 Golang 上游。一次是分心想要更了解 Golang...

鐵人賽 Software Development DAY 26

技術 DAY26: RISC-V: riscv is getting MSI

tags: 鐵人賽 前言 今日的這篇是參考了某個國外網站做的統整,筆者認為挺不錯的,因此也翻譯之後做整理 overview MSI 不需要 interrupt...

鐵人賽 Software Development DAY 17

技術 予焦啦!問題分析

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!正式進入下半場之前,...

鐵人賽 Software Development DAY 28

技術 DAY:28 perf(二)在risc-v上的限制

tags: 鐵人賽 0.前言 好的,昨天已經簡單介紹了perf的使用方法,那今天來介紹一些深度的一些問題,也就是過去risc-v架構上使用perf會有一些限制,...

鐵人賽 Software Development DAY 24

技術 DAY24: RISC-V: Memory-resident interrupt file

tags: 鐵人賽 正文開始 IOMMU 可以選擇性的支援 memory resident interrupt file(以下簡稱 MRIF),如果實作了,使用...

鐵人賽 Software Development DAY 21

技術 DAY21: RISC-V: VS level 的 interrupt

tags: 鐵人賽 正文開始! Configuring priorities of major interrupts at VS level 如同 superv...

鐵人賽 Software Development DAY 19

技術 DAY19: RISC-V: Supervisor level 的 Interrupt

tags: 鐵人賽 0. 前言 跟昨日蠻像的,但今天是介紹 supervisor level 的部分 簡介 當 sip/siph 為 1時,sip/siph...

鐵人賽 Software Development DAY 12

技術 DAY12: RISC-V: IMSIC(四)

tags: 鐵人賽 0. 前言 今日我們繼續介紹 IMSIC 今天會是 IMSIC 系列的最後一天~加油!! 1. Top external interrupt...

鐵人賽 Software Development DAY 17

技術 DAY17: RISC-V: 傻傻分不清之 Duo-PLIC

tags: 鐵人賽 0. 前言 今日我們來介紹 Duo-PLIC,為何需要 Duo-PLIC 呢~update:根據最新的 SPEC 描述,RISC-V 不會將...

鐵人賽 Software Development DAY 20

技術 Day-19 Page Fault Lazy Page Allocation Implementation

前言 在前面我們介紹了 page fault 以及 lazy page allocation 的概念,而我們在 usertrap() 中通過 scause C...

鐵人賽 Software Development DAY 24

技術 Day-23 Spinlock 在 UART 使用與實作

前言 前面我們介紹了多 Process 會遇到的 race condition 的問題,以及如何使用 lock 的機制進行處理,後面提到了 xv6 中 Spi...

鐵人賽 Software Development DAY 17

技術 Day-16 xv6 Trap (user mode): Trace exec()

前言 在前面我們看過了整個 trap 的流程,而在今天我們將以 exec() 這個 System call 來追蹤實際 trap 發生的情況。 exec()...

鐵人賽 Software Development DAY 25

技術 DAY25: RISC-V: MSI ID & page table

tags: 鐵人賽 Identification of incoming MSIs for a virtual machine IOMMU 必須識別來自設備 M...

鐵人賽 Software Development DAY 21

技術 予焦啦!實作上下文機制

本節是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e19b751c 為基準做的實驗 予焦啦!今天我們就來驗收前兩...

鐵人賽 Software Development DAY 27

技術 Day-26 xv6 Switch Thread, yield, sched

前言 昨天我們簡單的介紹了 Thread 的一些基本概念,以及 Thread 是如何進行切換的,最後通過一個簡單的實驗去證明 compute bound th...

技術 [OS自學筆記] 於ubuntu 安裝 xv6-riscv

重新複習operating system,但卻發現nachos真的太舊了,還只能安裝在32位元的linux上,因此轉向改裝xv6-riscv。 在64位元Ubu...

鐵人賽 Software Development DAY 25

技術 Day-24 xv6 Process, Init Process

前言 前面我們提到了 Process 的概念,我們知道一個位於 user space 執行中的程式為 Process,而 Process 有虛擬記憶體的概念,...