1666_MIT 6.828 JOS隔离机制的大纲
全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com)
这一次简单看一份文本性的幻灯片大纲。
1. 在OS的设计中有很多要求,对于隔离的要求可能是最严格的。
2. 隔离的实现是通过硬件的机制,主要是MMU。
3. 隔离的主要作用:防止错误的扩散、进程之间的相关监控、过多的CPU占用以及一些异常行为的阻断。
4. 用户或者内核模式的设置,会赋给指令不同的执行权限。
5. 在用户模式下,访问内核权限的区域会失败。
6. 我现在接触的很多嵌入式的MCU其实也有类似的机制,更加直接地从访问模式上分为了用户以及管理员模式。不过,在我的项目执行中类似的功能很少去尝试实施。
1. 关于中断的处理,感觉上全都是由内核来托管的。而用户触发的相应的中断会在内核处理,而接下来的操作只有对应的用户可以承接。这种设计很合理,但是想不通如何实现。
2. 为什么中断的堆栈会使用内核的堆栈空间呢?其实从这一页前半段就能够看得出来,中断的处理其实都是内核托管的,由内核来处理。因此,使用的信息需要是内核空间。处理的过程中还会传递给用户程序,中断用户程序,因此需要做一个现场的保护处理。这个,是下一页文档中的一个问题。其实结合这里的信息,一起坐着一个思考更加合适。
3. 这一页也介绍了芯片对于中断的处理机制,这个我觉得不同芯片都是类似的,我也看过很多芯片的类似功能。这里就直接跳过了。
最后的总结中,提到了页表的机制其实是进行用户程序存储空间区间访问的限制。这个其实是前面lab2中进行的功能调试,在计划表中的安排在这里出现没有理清楚缘由。可能后续会基于这个机制做更多、更深的一些功能设计?
1666_MIT 6.828 JOS隔离机制的大纲相关推荐
- 事务隔离机制原理深入分析以及MySQL不同隔离级别分场景下实验对比
这是我总结的事务的四种隔离机制,比较好理解,主要是有些地方文字游戏说不清楚很容易混淆: Read Uncommitted(读未提交)A未完,B已更新,未提交,A读到B已更新的数据,由于未提交,那么可能 ...
- 事务隔离机制原理分析以及是否可以防止订单超卖
事务的隔离机制是指: Read Uncommitted(读取未提交内容) Read Committed(读取提交内容) Repeatable Read(可重读) Serializable(可串行化) ...
- java 类隔离_微服务架构中zuul的两种隔离机制实验
ZuulException REJECTED_SEMAPHORE_EXECUTION 是一个最近在性能测试中经常遇到的异常.查询资料发现是因为zuul默认每个路由直接用信号量做隔离,并且默认值是100 ...
- 数据事务四种隔离机制和七种传播行为
数据事务四种隔离机制和七种传播行为 一.隔离级别: 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted.Read committed.Repeatable read.Seria ...
- dart系列之:dart优秀的秘诀-隔离机制
文章目录 简介 dart中的隔离机制 生成一个Isolate Isolate之间的交互 一个例子 总结 简介 之前介绍了很多dart中的异步编程技巧,不知道大家有没有发现一个问题,如果是在java的异 ...
- Mysql 面试常问4 -- 锁模块之事务并发访问产生的问题以及事务隔离机制 InnoDB支持事务
锁模块之数据库事务的四大特性 数据库事务的四大特性和程序事务的四大特性基本相同 ⑴ 原子性(Atomicity) 原子性,这个是最简单的.说的是一个事务内所有操作共同组成一个原子包,要么全部成功,要么 ...
- Mysql事务隔离机制
SQL隔离机制: 所谓隔离机制,指的是读与写之间的隔离,指的是在多事务并行的时候,A事务的读与B事务的写之间的隔离,也就是说B事务的写对A事务的可见性. 多事务并发运行的时候,同时读写一个数据,可能会 ...
- linux沙箱隔离_Android系统的沙箱隔离机制
大家都知道iOS系统是一种封闭的系统,iOS系统的应用程序之间都具有严格的沙箱隔离机制.而Android系统同样具备类似沙箱隔离机制,只是Android系统是开源的,开发者的自主性更大. Sandbo ...
- MIT 6.828 JOS学习笔记17. Lab 3.1 Part A User Environments
Introduction 在这个实验中,我们将实现操作系统的一些基本功能,来实现用户环境下的进程的正常运行.你将会加强JOS内核的功能,为它增添一些重要的数据结构,用来记录用户进程环境的一些信息:创建 ...
最新文章
- 三维植物树木模型 Maxtree – Plant Models Vol 74
- 对于二叉树三种非递归遍历方式的理解
- 经典C语言程序100例之七六
- python在不同层级目录import模块的方法
- 线性代数【5】矩阵和矩阵运算
- c语言静态函数调用静态变量_C语言中的静态变量和函数
- jetty java 禁用目录列表_Apache httpd 目录列表禁用配置(options indexes)
- Ubuntu 16.10安装之后必须做的16 件事
- tron区块链php对接,兄弟连区块链入门到精通教程基础开发通过接口查询tron提币情况...
- 中文的括号和英文的括号区别_易混标点符号:中英文冒号(:、:)、比号(∶)...
- 笔记本护眼设置——全面攻略(保护视力)(笔者倾情奉献+强烈推荐)
- 火狐插件 打开html 死机,火狐flash插件崩溃(Firefox火狐Flash插件卡死问题完美解决方法)...
- 淘宝天猫评论爬取,简单的办法完成滑动验证
- 文件大小与占用空间大小(附带字节转KB,MB公式)
- 被遗忘的艺术:图的思维方式
- Android仿微信朋友圈5实现朋友圈列表
- 新建vue-cli项目body与页面边框存在间隙
- 有一间计算机实验室英语怎么说,实验室英语怎么说
- 沃尔玛中国前CEO陈文渊将出任百事亚太区CEO;山姆再次下调近百种畅销单品价格 | 美通企业日报...
- DevOps到底是什么意思?-小白收藏