You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
po2ap8csw b1ea2bb8db
Delete '实验报告.doc'
2 years ago
boot first commit 2 years ago
fs replace all with current linux/0 2 years ago
include first commit 2 years ago
init replace all with current linux/0 2 years ago
kernel replace all with current linux/0 2 years ago
lib replace all with current linux/0 2 years ago
mm replace all with current linux/0 2 years ago
tools replace all with current linux/0 2 years ago
Image replace all with current linux/0 2 years ago
Image.bkp first commit 2 years ago
Makefile first commit 2 years ago
README.md Update README.md 2 years ago
System.map replace all with current linux/0 2 years ago
System.map.2 replace all with current linux/0 2 years ago
execve2.patch first commit 2 years ago
linux-0.11-lab.zip 完整的0.11内核的代码,实现了四个系统调用。 2 years ago
memory.c ADD file via upload 2 years ago
sys.c ADD file via upload 2 years ago
sys_update.c ADD file via upload 2 years ago

README.md

linux_lab_os_exp1

在6.21日实现了sys_getcwd函数在6.22日实现sys_getdents和sys_sleep在6.23日实现了sys_execve2 其中sys_getcwd,sys_getdents,sys_sleep 在sys.c中定义sys_execve2在memory.c中定义 sys_getcwd参照了find_entry的实现方式sys_getdents和sys_getcwd基本原理相似没有回溯回根节点的过程而已 sys_sleep的实现就是signalalarmpause的混合 sys_execve2模仿sys_execve在do_execve的基础上加了类似do_no_page的代码

注: 1.在文件夹下面的sys.c和memory.c是我最初版的系统调用的实现也是linux-0.11-lab压缩包里的内容 2.有first commit 标志的是我了解项目提交机制后学会git而提交的内核代码由于原来的初版实现不了解项目提交机制故初版没有修改记录git后的修改记录也只是在原有代码上进行“换汤不换药”或者“无关痛痒”的修改