![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OS
文章平均质量分 80
liushuaikobe
这个作者很懒,什么都没留下…
展开
-
HIT软件学院第二次OS实验
这次实验是让你在linux0.11上增加两个系统调用,并编写两个简单的应用程序测试你写的系统调用。 iam() 第一个系统调用是iam(),其原型为: int iam(const char * name); 完成的功能是将字符串参数name的内容拷贝到内核中保存下来。要求name的长度不能超过23个字符。返回值是拷贝的字符数。如果name的字符个数超过了23,则返回“-1”原创 2011-11-14 15:13:34 · 4180 阅读 · 0 评论 -
逻辑地址、线性地址、物理地址和虚拟地址
逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部分。例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址,不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分段或分页机制,Cpu不进行自动地址转换);逻辑也就是在Intel 保护模式下程序执行代码段限长内转载 2011-11-23 14:08:12 · 907 阅读 · 0 评论 -
HIT软件学院第一次OS实验
这次实验主要是修改linux V0.11版本的引导程序的代码,使操作系统在启动时能再屏幕上打印一个你自己规定的字符串。因为这次实验仅仅修改了OS的引导部分(bootsect.s),我们只需要让引导部分能正常工作就可以验证你的字符串有没有正常输出了,至于后面的System模块我们不需要让它正常加载,所以,我们还要修改build.c文件,让它执行时不加载System模块,这是本次实验的要点。 赵烔博原创 2011-11-05 18:41:58 · 5552 阅读 · 10 评论 -
HIT软件学院第五次OS实验
继之前的实验的各种衰,今天终于把实验五搞得略懂略懂。 本次实验的基本内容是: 1.用Bochs调试工具跟踪Linux 0.11的地址翻译(地址映射)过程,了解IA-32和Linux 0.11的内存管理机制; 2.在Ubuntu上编写多进程的生产者—消费者程序,用共享内存做缓冲区; 3.在信号量实验的基础上,为Linux 0.11增加共享内存功能,并将生产者—消费者程序移植到Lin原创 2011-11-30 16:22:01 · 2396 阅读 · 1 评论