Xv6
文章平均质量分 89
ssslar
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MIT XV6 - 2.1 Lab: system calls - Using gdb
本文介绍了在Xv6操作系统学习过程中使用GDB调试器的基本方法。主要内容包括:1) 阅读教材第二章及相关代码的重要性;2) 推荐GDB学习资源;3) 详细演示了如何通过两个终端窗口连接QEMU模拟器和GDB调试器:先运行make qemu-gdb启动模拟器,再启动GDB;4) 展示了在GDB中设置断点(b syscall)、继续执行(c)、查看源码(layout src)、查看调用栈(backtrace)等基本调试操作;5) 通过检查进程结构体和寄存器值,将调试结果与user/initcode.S汇编代码进原创 2025-05-27 00:52:54 · 853 阅读 · 0 评论 -
MIT XV6 - 1.6 Lab: Xv6 and Unix utilities -uptime
本文介绍了在MIT XV6操作系统实验中的最后一个选做实验——实现uptime程序。该程序通过调用uptime系统调用,以时钟滴答(ticks)为单位输出系统的运行时间。实验中,作者编写了一个简单的C程序,直接调用uptime并输出结果。文章进一步分析了sys_uptime和sys_sleep的系统调用实现,详细解释了ticks和tickslock的更新机制,以及sleep和wakeup函数的工作原理。通过这些分析,作者展示了XV6系统中进程休眠和唤醒的基本机制,以及如何通过全局变量和锁来实现这些功能。原创 2025-05-13 00:07:46 · 921 阅读 · 0 评论 -
MIT XV6 - 1.5 Lab: Xv6 and Unix utilities - xargs
本实验要求实现一个简化版的UNIX xargs 程序,用于在xv6操作系统中执行命令。xargs 从标准输入读取每一行,并将其作为参数附加到指定的命令中,然后执行该命令。实验的核心是通过管道和多进程机制,打破命令参数数量的限制,实现命令的组合功能。实验提示包括使用 fork 和 exec 来执行命令,逐字符读取输入直到遇到换行符,并利用 MAXARG 定义参数数组。实验还强调了文件描述符的使用,特别是标准输入、输出和错误输出的管理。通过实现 xargs,可以更好地理解UNIX工具集的组合思想,如将 find原创 2025-05-11 23:24:51 · 954 阅读 · 0 评论 -
MIT XV6 - 1.4 Lab: Xv6 and Unix utilities - find
本文介绍了在MIT XV6操作系统中实现一个简单的UNIX find 工具的过程。该工具用于在指定目录及其子目录中查找特定文件名的文件。文章提供了详细的代码实现,核心功能包括递归遍历目录、过滤当前目录(.)和上级目录(..)、以及比较文件名。代码使用了深度优先搜索(DFS)算法来遍历目录树,并通过系统调用如open、read、stat等来操作文件和目录。文章还强调了如何使用strcmp进行字符串比较,以及如何通过Makefile将程序添加到XV6的用户程序中。最终的实现能够正确输出匹配文件的完整路径。原创 2025-05-10 19:26:20 · 1343 阅读 · 0 评论 -
MIT XV6 - 1.3 Lab: Xv6 and Unix utilities - primes
接上文。原创 2025-05-08 00:17:12 · 928 阅读 · 0 评论 -
MIT XV6 - 1.2 Lab: Xv6 and Unix utilities - pingpong
第二个小实验 pingpong原创 2025-05-02 23:59:59 · 1230 阅读 · 2 评论 -
MIT XV6 - 1.1 Lab: Xv6 and Unix utilities - user/_sleep 是什么?做什么?
编译后的user/_sleep到底是什么? 它又做了什么?原创 2025-05-01 23:54:09 · 929 阅读 · 0 评论 -
MIT XV6 - 1.1 Lab: Xv6 and Unix utilities - sleep 是怎样练成的?
探究sleep是如何编译出来的原创 2025-04-29 23:42:51 · 742 阅读 · 0 评论 -
MIT XV6 - 1.1 Lab: Xv6 and Unix utilities - sleep
第一个实现 sleep原创 2025-04-28 00:13:47 · 953 阅读 · 3 评论 -
MIT XV6 - 1. 环境准备
学习Xv6系统的总结原创 2025-04-27 00:49:06 · 502 阅读 · 0 评论
分享