MIT-6.828 Lab 2: Memory Management實驗報告 tags:mit-6.828 os 概述 本文主要介紹lab2,講的是操作系統內存管理,從內容上分為三部分: 第一部分講的是物理內存管理,要進行內存管理首先需要知道哪些物理內存是空閑的,哪些是被使用 ...
MIT . Lab : Network Driver default final project tags: mit . os 概述 本lab是 . 默認的最后一個實驗,圍繞網絡展開。主要就做了一件事情。 從 實現網絡驅動。 還提到一些比較重要的概念: 內存映射I O DMA 用戶級線程實現原理 The Network Server 從 開始寫協議棧是很困難的,我們將使用lwIP,輕量級的TCP ...
2018-12-06 23:15 0 994 推薦指數:
MIT-6.828 Lab 2: Memory Management實驗報告 tags:mit-6.828 os 概述 本文主要介紹lab2,講的是操作系統內存管理,從內容上分為三部分: 第一部分講的是物理內存管理,要進行內存管理首先需要知道哪些物理內存是空閑的,哪些是被使用 ...
Lab 4: Preemptive Multitasking tags: mit-6.828, os 概述 本文是lab4的實驗報告,主要圍繞進程相關概念進行介紹。主要將四個知識點: 開啟多處理器。現代處理器一般都是多核的,這樣每個CPU能同時運行不同進程,實現並行。需要用鎖解決 ...
Lab 3: User Environments實驗報告 tags:mit-6.828 os 概述: 本文是lab3的實驗報告,主要介紹JOS中的進程,異常處理,系統調用。內容上分為三部分: 用戶環境建立,可以加載用戶ELF文件並執行。(目前還沒有文件系統,需要在內核代碼硬編碼 ...
Part 3 Kernel Address Space JOS把32位線性地址虛擬空間划分成兩個部分。其中用戶環境(進程運行環境)通常占據低地址的那部分,叫用戶地址空間。而操作系統內核總是占據高地址的部分,叫內核地址空間。這兩個部分的分界線是定義在memlayout.h文件中的一個宏 ULIM ...
Lab 1 Part 3: The kernel 現在我們將開始具體討論一下JOS內核了。就像boot loader一樣,內核開始的時候也是一些匯編語句,用於設置一些東西,來保證C語言的程序能夠正確的執行。 使用虛擬內存 在運行boot loader時,boot loader中的鏈接 ...
Lab 5: File system, Spawn and Shell tags: mit-6.828 os 概述 本lab將實現JOS的文件系統,只要包括如下四部分: 引入一個文件系統進程(FS進程)的特殊進程,該進程提供文件操作的接口。 建立RPC機制,客戶端進程向FS ...
這一部分要實現的是對多核處理器的支持,然后實現系統調用只喜歡用戶應用創建新的應用,而且還要實現round-robin調度算法 Multiprocessor support jos中對CPU進行了抽象 要描述一個CPU, 需要知道id,運行狀態,當前正在運行的進程 所有的cpu數目放在 ...
這里要實現的就是UNIX標准系統調用中的fork,核心當然是copy on write技術 至於為什么采用copy on write,是因為子進程在被創建之后很可能立刻執行exec()了,之前做的一 ...