tags: 鐵人賽 0. 前言 建議先觀看之前的文章唷 AIA 簡介 AIA 下所新增的 CSR 今天開始介紹 IMSIC,預計會分為五天,每天學習...
前言 在最一開始的時候,我們知道作業系統有一個很重要的目標,便是做到隔離性的部分,而隔離性這一部分的實作和虛擬記憶體管理有著很大的關係,以下將會介紹記憶體地址...
前言 我們在前面花了 5 個篇章對於 trap 進行了完整的介紹,並且瞭解了 trap 處理得具體流程,今天我們將看到 page fault 所造成的 tra...
多功能教學實習板可以很彈性的應用於各種不同型式的微電腦主控板,學實習板外型如下所示: 直流電源及三色LED電路,如下圖(a)~(c)所示: 圖(a) 直流電...
前言 前面看完了 ecall 的前後變化,接下來我們將繼續深入追蹤 trap 的流程,查看是如何進行整個 user mode 到 supervisor mod...
前言 今日希望通過看到整個 xv6 的啟動過程,來一步步地看到作業系統相關的設計議題,如 memory page 機制,lock,process 等等。 啟動...
前言 在這一篇文章中,我們將會介紹何謂 Thread,和 Process 之間有什麼樣的區別,前面介紹的 Thread 和 Process 的差別是理論上的差...
必須執行Arduino IDE的1.8.1以後版本,才可以使用Arduino IDE在Corvette-T1上開發應用程式。 打開Arduino IDE...
本節是以 Golang 上游 7ee4c1665477c6cf574cb9128deaf9d00906c69f 為基準做的實驗 予焦啦!昨天我們終於抵達了...
前言 如果一個應用程式想要使用多個 CPU 的核心 (thread),並且使用了 System call,將會觸發 trap,而多個核心使用 System c...
在實際的硬體上,開機後執行的第一道指令已經燒錄在ROM上面,對於CPU來說程式在開機時就已經位於位址空間的某處,但對於我們的模擬器來說,開機後的記憶體是一片空白...
本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日打通了 thro...
tags:鐵人賽 0. 前言 首先要先知道過去有哪些 CSR,以及這些 CSR 所代表的意義,接著再來認識有新增了哪些 CSR。前些日子有介紹了許多 CSR 可...
這次要來談的是Rust的測試框架,並且重新調整目錄架構。 撰寫測試 Rust本身就自帶測試框架,無須安裝額外library,這邊直接把上次所寫的main改寫成t...
予焦啦!我們昨日實作完簡易排程,確保 Golang 執行緒(M)都會被排到 CPU 資源。但是卻有不定時炸彈會出現,那就是試圖解鎖非上鎖的鎖的錯誤;大部分時候都...
本節是以 Golang 上游 6a79f358069195e1cddb821e81fab956d9a0c7d1 為基準做的實驗 予焦啦!昨日以前的第三章解決...
tags: 鐵人賽 0. 前言 定義 major interrupt 以及 默認的優先權 下圖列出目前 risc-v 所定義 major interrupt 的...
本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 本日的內容資料很多,但或...
tags: 鐵人賽 前言 今天的 title 有回文ㄝ cool~ 介紹 默認情況下,除非平台具有不同 IPI 機制,否按照 Privileged SPEC ,...
tags: 鐵人賽 介紹 當系統中存在 IOMMU ,使運行中的 VM(virtual machine)的 guest os 可以直接控制 I/O 設備。IOM...
本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!回顧第零章,我們有...
本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 回顧昨日,我們發現過去一直...
前言 前面我們知道在 xv6 啟動後,Shell 會輸出 $ 到 Console 上,而我們可以追蹤產生 $ 的行為了解 UART 的運作,以及介紹一下 Dr...
本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日直接瞄準一組虛擬...
前言 我們昨天看到了 kernel space 中的 kernel virtual address space,今天我們會看到 user virtual ad...
大家好,在本系列文中,將以 RISC-V xv6 以主要的學習目標來學習作業系統,希望本文可以達到以下幾個目標 藉由 top-down 的方式學習 xv6 的...
晶心(Andes)科技公司將RISC-V核心授權給泰凌(Telink)半導體公司來生產晶片,它是物聯網解決方案系列的最新一代SoC,並內含高性能32-bit的R...
前言 我們簡單的回顧來自於 user mode 的 trap 的流程,整個流程為 uservec 到 usertrap() 再到 usertrapret()...
tags: 鐵人賽 0. 前言 昨日已經先簡單介紹 IMSIC 、 interrupt ID,以及 interrupt file,進天繼續介紹吧。 1. Int...
前言 繼續前面 UART TOP 的部分,下面將介紹 UART Bottom 的部分,也就是關於 Interrupt 的處理,並從 Interrupt 的處理...