xv6 一个简单的,类unix适于教学的操作系统

xv6 一个简单的,类unix适于教学的操作系统Contents 0 操作系统接口 1 第一个进程 2 页表 3 陷阱 traps 中断 以及驱动 4 锁 5 调试 scheduling 6 文件系统 A PC 硬件 B boot loader index 前言以及致谢 这个是为操作系统课程写的草稿

大家好,我是讯享网,很高兴认识大家。

Contents

0  操作系统接口

1 第一个进程

2 页表

3 陷阱(traps), 中断,以及驱动

4 锁

5 调试 (scheduling)

6 文件系统

A PC 硬件

B boot loader

index

前言以及致谢

这个是为操作系统课程写的草稿,它通过一个叫xv6的内核来解释操作系统中的主要概念,xv6 重新实现的Dennis Ritchie和Ken

Thompson的UNIX 第六版。xv6 在结构和风格上面基本上和v6一样,但是它是基于X86多处理器用ANSI C实现的。

这本书应该和 xv6的源代码一起阅读.这个方法的灵感来源于John Lions对UNIX 第六版的评注。


讯享网

我们有在MIT6.828操作系统课程中使用这本教材,我们感谢所有教职员工,助教,以及所有直接或间接对xv6作出贡献的人。

特别的,我们想感谢Austin Clements和Nickolai Zeldovich.

第0章

操作系统接口

操作系統的职责是将一台计算机分配给多个程序并且提供一系列比单纯硬件更有用的服务,操作系统管理以及抽象底层硬件,所以

文字处理软件不用关心他在哪种类型的磁盘上工作,它还可以协调各种硬件,使得多个程序共享硬件资源并且看起来在同时运行,最后,

操作系统提供

第六章

文件系统

       文件系统的作用是组织和存储数据,一个典型的用途就是在用户和应用程序之间传递数据,还有数据持久化(persistence),这

样,在重启之后,数据仍然存在。

       xv6 文件系统提供了unix-like 的文件,文件夹(directories) 还有路径(pathname). 文件存放在ide 磁盘上面。一个文件系统主要面临着下面这些

问题:

  •   需要用磁盘上的数据结构去表示文件夹(directory) 文件, 还有标识block 的各种信息,block中的内容还有哪些block是空的。
  • 文件系统,必须要支持灾难恢复(crash recover). 就是说,如果发生了crash(比如突然掉电了),文件系统必须是重启之后,能够正常工作
  • 不同的进程可能同时对一个文件进行操作, 所以需要文件系统去维护一致性(maintain invariant).
  • 访问磁盘要比访问内存慢几个数量级,所以,需要将经常用到的文件cache 到主存上面。
     接下来的内容就是讲xv6 是怎么面对这些问题的。
小讯
上一篇 2025-03-19 14:32
下一篇 2025-03-10 08:39

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/61956.html