![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
哈工大操作系统Lab
文章平均质量分 88
这个专栏是我在阅读了《现代操作系统》之后 去学习了李治军老师的哈工大操作系统课而做的8个Lab 其中里面的Lab每一个都十分的有意思而且具有挑战 是真正的进入代码了解操作系统 很值得一做
Love 6
腾讯WXG在职后台小鹅
展开
-
哈工大操作系统原理与实践 Lab全实验博客链接
文章目录前引博客相关链接(更新中)前引一共这门课中含有8个Lab这8个Lab 基本上绝大部分都是我自己一点一点慢慢实现出来的除了Lab4是我贴了转载的人家的博客链接写这个Lab同样也是希望能够给一些没有什么思路 或者在一些地方卡住的朋友能够有一些帮助 :)博客相关链接(更新中)Lab1 哈工大操作系统之基础(控制系统启动过程实验)Lab2 哈工大操作系统之基础(添加系统调用实验)Lab3 哈工大操作系统之进程与线程(进程运行轨迹的跟踪与统计)Lab4 哈工大操作系统之进程与原创 2021-06-03 12:37:41 · 3070 阅读 · 0 评论 -
哈工大操作系统之外设与文件系统(Lab 8 proc文件系统的实现 详细流程分析+代码实现)
文章目录cat ./hello.c原创 2021-06-08 10:55:18 · 648 阅读 · 5 评论 -
哈工大操作系统之外设与文件系统(Lab7 终端设备的控制 深刻剖析printf函数全流程详细分析+代码实现)
文章目录前引闲聊相关博客查阅开始实验走进printf函数前引闲聊这个Lab确实很有意思哈哈哈 今天下午才发了Lab6的博客晚上差不多花了一个多小时的分析时间(主要是找函数位置)就成功的把这个Lab做出来了所以现在就打算认认真真的把这个实验的全流程写一遍因为我觉得我前面两个Lab的完成度并不是很高或多或少都有些Bug 就导致我觉得完成的不是很好 做的并不是很到位所以之后的几个我都会很认真的做 来弥补前面的Lab相关博客查阅write.c解析Linux 0.11中write实现原创 2021-06-06 11:46:43 · 507 阅读 · 2 评论 -
哈工大操作系统之内存管理(Lab6 地址映射与共享流程分析+代码实现)
文章目录前引闲聊相关查阅资料链接相关实验参照链接预处理(正式开始实现)实验册预浏览实验中预知知识开始任务一开始任务二开始添加系统调用开始编写producer.c consumer.c实现效果部分展示前引闲聊做这个Lab 我差不多就花了一下午+一晚上的时间学习内存管理+做Lab花了两天时间因为昨晚睡得有点晚 1点钟才睡着的 今天尽管10点半才起床但依然精神不是很好 今天上午想刷力扣都一道不想刷 就算了所以切记 千万不要熬夜 不要熬夜 第二天的精神肯定会很差的…所以今天就打算把这个博客的Lab原创 2021-06-05 14:10:03 · 617 阅读 · 4 评论 -
哈工大操作系统之进程与线程(Lab5 信号量的实现和应用流程分析+代码实现)
文章目录前引闲聊相关查阅说明预处理(正式开始实验)实验册预浏览实验中预知知识开始添加系统调用解压文件等基本操作略过添加sem.c并做一定的编辑修改MakeFile修改其他的文件进入linux虚拟机测试开始正式编写系统调用编写系统调用函数编写头文件sem.h小细节的改动处理开始编写主函数实现效果部分展示完结撒花前引闲聊关于这个Lab 关于信号量有一个最简单的删除函数我没有写其他的我都是自己慢慢调试出来实现的 实在还是很不容易Lab4因为周末刷了两天 而导致这周一实在没有勇气再做了Lab5 我用了原创 2021-06-02 22:01:57 · 1364 阅读 · 2 评论 -
哈工大操作系统之进程与线程(Lab4 基于内核栈的进程切换)(转载)
文章目录前引链接前引下面就贴了几个写的比较详细且收藏比较多的链接吧Forgive me 周末玩的太开心 打断了我现在做这个Lab的勇气确实我感觉我汇编学习的并不是那么好 毕竟是自学看书 而且也只过了一遍现在我也明白了一个事情我认为很多事情 如果是具有挑战或者有一定困难的千万千万要一口气做下去 不能半途休息或者放缓因为当一口气下去之后 再想起来 那是真的真的很困难的本来这8个Lab我是打算每个都自己一个步骤一个步骤慢慢调试的但是到第4个 我也就打算转载了 后面反正我也打算按照《操作系转载 2021-05-31 20:17:10 · 377 阅读 · 0 评论 -
哈工大操作系统之进程与线程(Lab3 进程运行轨迹的跟踪与统计 超详细全流程分析)
文章目录链接printk.c初版链接操作系统中进程的实现 PCB结构(Task_struct) 讲解UNIX系统中struct tms 分析《转载》Linux多任务编程(六)—编写多进程程序及其代码printk.c// 向stdout打印正在运行的进程的IDfprintk(1, "The ID of running process is %ld", current->pid);// 向log文件输出跟踪进程运行轨迹fprintk(3, "%ld\t%c\t%ld\n"原创 2021-05-27 20:45:40 · 1208 阅读 · 1 评论 -
哈工大操作系统之基础(Lab2 添加系统调用实验全过程+跳坑解析)
文章目录前引Phase总概括预先了解实验内容评分标准实验提示应用程序如何调用系统调用预处理(正式开始实验)解压压缩包增加系统调用号增加系统调用数函数调用表修改修改MakeFile声明开始编写 系统调用代码编译内核编写应用程序进入虚拟机文件系统编写iam.c 和 whoami.c测试文件复制 关闭文件系统运行linux虚拟机 测试数据前引说真的 写到现在 我不知道已经重复了多少遍多少遍重启环境 因为死机而重启的过程了做这个Lab 我差不多整整花了一天多的时间 而且一直卡在一些奇奇怪怪的地方啊 各原创 2021-05-24 20:40:31 · 2558 阅读 · 4 评论 -
哈工大操作系统之基础(Lab1 控制系统启动过程实验)
文章目录前引详细步骤链接(方便查阅)Phase 1 bootsect 显示Phase 1 bootsect 显示实现Phase 2 读入Setup.sPhase 2 读入Setup.s 实现Phase 3 获取硬件参数 + 显示获得的参数Phase 3 获取硬件参数 + 显示获得的参数实现前引从这个Lab开始 我也开始重新学习操作系统知识这个Lab是来源于网易云课堂 哈工大的公开课我也是听了几讲 觉得确实讲的很好大概是前20天左右 我拿起了现代操作系统在阅读了一番之后 阅读了前六章 觉得操作原创 2021-05-22 17:03:51 · 1612 阅读 · 0 评论