mit6.828专题

操作系统入门系列-MIT6.828(操作系统工程)学习笔记(七)---- 系统调用函数与GDB(Lab: system calls)

系列文章目录 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(一)---- 操作系统介绍与接口示例 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(二)---- 课程实验环境搭建(wsl2+ubuntu+quem+xv6) 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(三)---- xv6初探与实验一(Lab: Xv6 and Unix utilities)

操作系统入门系列-MIT6.828(操作系统工程)学习笔记(五)---- 操作系统的组织结构(OS design)

系列文章目录 操作系统入门系列-MIT6.S081(操作系统)学习笔记(一)---- 操作系统介绍与接口示例 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(二)----课程实验环境搭建(wsl2+ubuntu+quem+xv6) 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(三)---- xv6初探与实验一(Lab: Xv6 and Unix utilities) 操

操作系统入门系列-MIT6.828(操作系统工程)学习笔记(四)---- C语言与计算机架构(Programming xv6 in C)

系列文章目录 操作系统入门系列-MIT6.S081(操作系统)学习笔记(一)---- 操作系统介绍与接口示例 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(二)----课程实验环境搭建(wsl2+ubuntu+quem+xv6) 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(三)---- xv6初探与实验一(Lab: Xv6 and Unix utilities) 操

MIT6.828 Lab2-3 Sysinfo

目录 一、实验内容二、实验过程2.1 已有的代码2.2 需补充内容/kernel/kalloc.c修改(剩余内存计算的函数)/kernel/proc.c修改(统计进程数量的函数)/kernel/defs.h修改添加/kernel/sysinfo.c文件/kernel/syscall.h修改/kernel/syscall.c修改/user/user.h修改/user/usys.pl修改Make

MIT6.828 实验环境安装教程

Thanks:mit6.828环境搭建 - 人云我不亦云的文章 - 知乎 https://zhuanlan.zhihu.com/p/489921553  sudo make && make install install -d -m 0755 "/share/qemu" install: 无法创建目录 “/share”: 权限不够 make: *** [Makefile:382:install-

[MIT6.828] LAB1中VBE图形界面测试总结

看到红色的Challenge就想挑战一把,于是搞了下VESA图形模式的编程。 科普知识: 什么是VBE? VBE的全称是VESA BIOS Extension。 什么是VESA? VESA的全称是Video Electronics Standards Association即视频电子标准协会,是由代表来自世界各地的、享有投票权利的超过165家成员公司的董事会领导的非盈利国际组织。 VESA致力于开

[MIT6.828]LAB1输入输出TAB字符的若干问题及总结

LAB1给代码中的'\t'的处理很简陋,直接把'\t'替换为5个空格,这和我们平时习惯有很大不同,所以要改造一下。 1、在kern/console.c cga_putc()函数中,可以看到'\t'case分支,把这个分支替换为如下代码: case '\t': do{ cons_putc(' '); }while(crt_pos%TAB_SIZE != 0); break; 其中的TAB_SIZE我

[MIT6.828] LAB4 PART A

Exercise 1.Implement round-robin scheduling in sched_yield() as described above. Don't forget to modify syscall() to dispatch sys_yield(). 修改kern/sched.c文件的sched_yield()函数 // Choose a user environme

MIT6.828LAB4 (3)

LAB3_Part B: Copy-on-Write Fork 文章目录 LAB3_Part B: Copy-on-Write Fork前言练习8练习9练习10练习11练习12总结 前言 记录一下自己的学习过程 实验内容翻译: https://gitee.com/cherrydance/mit6.828 该翻译仅供参考 练习8 实现sys_env_set_pgf

MIT6.828_HW11_xv6 log

MIT6.828_HW11_xv6 log First, you’ll artificially create a crash which illustrates why logging is needed. Second, you’ll remove one inefficiency in the xv6 logging system. 1.1. Creating a Problem xv

MIT6.828_HW10_Bigger file for xv6

MIT6.828_HW10_Bigger file for xv6 当前 xv6 文件大小限制在 140 个扇区。直接索引节点 12 个, 以及一个一级索引节点,其指向一个 sector,可包含 512/4 = 128个扇区。即总和为12+128 = 140个扇区。我们需要为xv6的文件节点添加一个二级索引节点,其包含128个一级索引节点的地址,每个一级索引节点又包含了128数据扇区。最终一个文

MIT6.828_HW9_barriers

MIT6.828_HW9_barriers 在这个任务中,我们使用由pthread库提供的条件变量来实现barrier。barrier 是一个应用程序点,必须所有线程到达这个点才能继续执行。条件变量是一种类似于xv6的 sleep 和 wakeup 的序列协调技术。 下载源码,编译执行。 $ gcc -g -O2 -pthread barrier.c$ ./a.out 2 pthrea

mit6.828 Lab1

Part 1 Exercise 1 熟悉x86汇编语言 参考资料:https://pdos.csail.mit.edu/6.828/2018/readings/pcasm-book.pdf 这本书中介绍的是使用nasm汇编器所支持的汇编(Intel Syntax),但在这个lab中实际使用的是GNU汇编器(AT&T Syntax) http://www.delorie.com/djgpp/do