前言 這個星期睡眠和精神狀態一直比較差,6.824很多論文沒時間回顧,15-445的Lab2又耗費了我巨大的精力,實在寫不動代碼了。只能寫點回顧總結之類的東西。我很久之前就想總結一下xv6中關於進程的知識,后來發現這涉及的范圍實在是太大了(廢話,這在哪本OS教材里都能占完整的一章),而且無論如何 ...
前言 今晚在實驗室摸魚做 .S 的Lab Allocator,並立下flag,改掉一個bug就拍死一只在身邊飛的蚊子。在擊殺 只蚊子拿到Legendary后仍然沒能通過usertest,人已原地裂解開來。遂早退實驗室滾回宿舍,撿起自己已經兩年沒寫的blog,碼點自己用vscode調試xv 的心得和小tips,如果對同樣在碼xv 但無法忍受gdb調試界面的小伙伴們有幫助那就太好了,積點功德,但願明天 ...
2020-09-25 14:43 3 4081 推薦指數:
前言 這個星期睡眠和精神狀態一直比較差,6.824很多論文沒時間回顧,15-445的Lab2又耗費了我巨大的精力,實在寫不動代碼了。只能寫點回顧總結之類的東西。我很久之前就想總結一下xv6中關於進程的知識,后來發現這涉及的范圍實在是太大了(廢話,這在哪本OS教材里都能占完整的一章),而且無論如何 ...
雖然Copy-on-Write原理是很顯而易見的,但是在具體實現中需要處理的細節特別多,經常會在莫名其妙的地方出現錯誤,再加上使用gdb調試內核本身就是一件不容易的事情 ...
前言 Lab一做一晚上,blog一寫能寫兩天,比做Lab的時間還長( 這篇博文是半夜才寫完的,本來打算寫完后立刻發出來,但由於今天發現白天發博點擊量會高點,就睡了一覺后才發(幾十的點擊量也是點擊量啊T_T).... 我個人計划采用bottom-up的方式,用兩篇blog配合源碼講解xv6 ...
xv6的文件系統(上篇):https://www.cnblogs.com/KatyuMarisaBlog ...
本文介紹搭建Mit6.828/6.S081 fall2019實驗環境的詳細過程,包括riscv工具鏈、qemu和xv6,以MacOS下的實踐為例,Linux系統同樣可以參考。 介紹 只有了解底層原理才能寫好上層應用,曾經幾度想要系統地學習OS課程,嘗試去看了《計算機操作系統 ...
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里面有一個自旋鎖和一個鏈表頭部指針 ...