RISC-V assembly Which registers contain arguments to functions? For example, which register holds 13 in main's call to printf ...
前言 Lab Allocator代碼量很少,主要是用xv 已經寫好的buddy allocator替換掉kallocator。kallocator簡單的將內存分為 bytes 下簡稱PGSIZE 頁面,將空閑頁面串接成雙向鏈表。這種方式很簡潔,可以很好的應用First Fit算法,且沒有用多余的數據結構去管理內存。但一次只能分配完整的一頁。buddy allocator可以靈活的分配 k LEAF ...
2020-10-29 10:26 0 490 推薦指數:
RISC-V assembly Which registers contain arguments to functions? For example, which register holds 13 in main's call to printf ...
mmap mmap就是把指定的文件fd映射到進程內存空間的某一個部分,映射建立之后,進程讀寫這塊內存就像是在讀寫文件一樣。按照提示來做實驗: Implement mmap: find an unused region in the process's address space ...
Memory allocator xv6是使用linked list來管理空余內存塊,我們先看一下kalloc.c究竟是怎么工作的: 首先是2個結構體,匿名結構體kmem就是我們訪問空余內存的憑據了,kmem里面有一個自旋鎖和一個鏈表頭部指針 ...
的知識點、lab,以及6.S081想寫的東西都寫完。今天先做個復健,碼一下剛做完的lab8,以及xv6的f ...
i-node xv6文件系統是使用inode來管理文件,先上一張圖來解釋一個文件的inode是怎么管理它的磁盤塊的: ...
前言 最近絕大多數的空閑時間都拿來錘15-445了,很久沒動6.S081。前幾天回頭看了一下一個月前錘完的Lazy Allocation,自己寫的代碼幾乎都不認識了.......看來總結之類的東西最好還是趁着熱乎的時候寫啊。 不過15-445的內容實在太多了,我只是為了錘Lab粗略的看了看課件 ...
Speed up system calls 這個實驗的目的是要“加速系統調用”,怎么加速呢?在內核和用戶程序 ...
前言 這個星期睡眠和精神狀態一直比較差,6.824很多論文沒時間回顧,15-445的Lab2又耗費了我巨大的精力,實在寫不動代碼了。只能寫點回顧總結之類的東西。我很久之前就想總結一下xv6中關於進程的知識,后來發現這涉及的范圍實在是太大了(廢話,這在哪本OS教材里都能占完整的一章),而且無論如何 ...