![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机操作系统
文章平均质量分 62
学习哈工大_李治军老师_计算机操作系统相关的笔记
咖啡与乌龙
这是一个知识分享型宝藏博主,本科测控技术与仪器,研究生仪器科学与技术,自学计算机技术,目前在sangfor担任后台开发工程师,职场新人小菜鸟一枚。欢迎大家关注,相互交流,相互学习,共同进步!!!
展开
-
系统调用:用户级函数如何通过INT 80中断进入操作系统内核
一个用户函数进入系统内核的过程以printf()打印内核中的一段字符串为例printf()是用户函数无法进入内核,因此需要进行系统调用,进入内核的方式是使用int 0x80中断printf()函数想要进入系统内核是通过系统调用write()实现/* * 位置:linux/lib/write.c */#define __LIBRARY__#include <unistd.h>_syscall3(int,write,int,fd,const char *,buf,off_t原创 2022-03-08 22:17:03 · 3185 阅读 · 0 评论 -
操作系统实验学习中踩过的坑:“parse error before ‘xxxx’ ”gcc编译错误和编译Linux0.11内核时的出错的可能原因
可能会出现的错误1:上述的情况对应于iam.c因为包含了<unistd.h>所以没有报错whami.c未包含<unistd.h>所以编译出错...lacks type or storage class终于成功出结果了可能会出现的错误2:不要用另一个地方下载的Linux 0.11内核进行修改,然后上传到HIT的线上实验系统去编译,这样大概率会出问题,因为宿主机器不一样,所以Makefile的配置大概率不太合适,这有很大可能最终编译失败正确的做法是:下载线上系统的L原创 2022-03-08 22:00:38 · 3551 阅读 · 0 评论 -
哈工大操作系统实验2:添加系统调用iam()、whoami()
哈工大操作系统实验2:添加系统调用iam()、whoami()需要添加到内核中的文件:lib/whoami.c、lib/iam.c、kernel/who.c需要修改的内核文件:include/unistd.h、include/linux/sys.h、kernel/system_call.s、lib/Makefile、kernel/Makefile为测试而添加的用户程序:iam.c、whoami.c在include/linux/sys.h中的_sys_call_table表内添加两个新的系原创 2022-03-08 21:45:27 · 2813 阅读 · 0 评论 -
哈工大操作系统实验:动手修改操作系统内核,自定义开机界面
注意:其中一部分英文注释是我的塑料英文,主要是为了和源码一起看起来更和谐一点,很容易懂实验做完了,才发现实验后网页有老师给的参考答案,哈哈反正我也不看,得记录一下,不记录就亏了。一天多时间都花在汇编上了0 先上节目效果1 修改屏幕上的开机Logo,设计一个自己的提示信息①修改Linux源码0.11中bootsect.s末尾的msg1标号处的信息msg1: .byte 13,10 .ascii "DongZhaoChengOS is loading..." .byte 13,10,13,1原创 2022-03-06 21:53:19 · 1820 阅读 · 4 评论