原标题:【陈老师华为北研所讲座PPT】从机制与策略探究Linux内核设计之道(4)

解放编译程序,以统一的方式分配逻辑地址。

首先内核通过映射机制把进程的虚拟地址映射到物理地址,在进程运行时,如果内核发现进程要访问的页没有在物理内存时,就发出了请页要求①;如果有空闲的内存可供分配,就请求分配内存②(于是用到了内存的分配和回收),并把正在使用的物理页记录在页缓存中③(使用了缓存机制)。如果没有足够的内存可供分配,那么就调用交换机制,腾出一部分内存④⑤。另外在地址映射中要通过TLB(翻译后援存储器)来寻找物理页⑧;交换机制中也要用到交换缓存⑥,并且把物理页内容交换到交换文件中后也要修改页表来映射文件地址⑦。

在一个布满城市的地图上,要想找到参与的感觉,就是自己也建一点。比如,你自己写的一个驱动程序,不仅仅是以模块的形式加载到内核,还给用户以选择,可以编译到内核中,这时你就可以建立自己的Makefile和Kconfig。

执行是操作系统要解决的核心问题之一,其他问题都是由此引发而出。执行机制在设计上的类似和巧妙,可以使你有豁然开阔之感。

通过fork()创建的进程处于就绪状态,其PCB进入就绪队列。如果调度程序schedule()运行,则从就绪队列中选择一进程投入运行而占有CPU。在进程执行的过程中,因为输入输出等原因调用interruptible_sleep_on()或者sleep_on(),则进程进入浅度睡眠或者深度睡眠。因为进程进入睡眠状态放弃CPU,因此也调用了调度程序schedule()重新从就绪队列中调用一个进程运行。返回搜狐,查看更多

责任编辑:

linux内核ppt刘小明,【陈老师华为北研所讲座PPT】从机制与策略探究Linux内核设计之道(4)...相关推荐

  1. 刘小明:我国“公交都市”建设发展现状与展望

    我国"公交都市"建设发展现状与展望 刘小明 中华人民共和国交通运输部副部长 摘要:在全面总结城市公交发展组织保障能力.基础设施服务能力.出行服务质量.创新发展能力和完备的城市绿色出 ...

  2. IQOO换鸿蒙系统,1998 iQOO 845版明天发?| 华为自研系统鸿蒙在全球注册商标

    原标题:1998 iQOO 845版明天发?| 华为自研系统鸿蒙在全球注册商标 声音 | 小白 首先恭喜高考生终于结束高考~ 在这里也温馨提醒其他人士 明天是工作日千万不要忘记定闹钟 毕竟高三党开启假 ...

  3. 招投标管理与实务--刘小明老师

    招投标管理与实务 [课程背景] 随着我国招投标业迅速发展,市场规模越来越大,招投标领域越来越广,人们对招投标业务越来越需要.但是,招投标市场存在很多问题,存在市场不规范,监管不力,程序不合法,标准不符 ...

  4. Linux指令_杨小明

    基础指令语法 1.ls指令 用法1:#ls含义:列出当前工作目录下的所有文件/文件夹的名称 用法2:#ls路径含义:列出指定路径下的所有文件/文件夹的名称关于路径(重要):路径可以分为两种:相对路径. ...

  5. 讲座:与迷茫为友的成长(贺利坚老师,烟台大学)——完整讲座PPT,精彩与动画媲美

    题记:认识贺利坚老师,是偶然中的必然,因为共同的志趣一定会迟早认识.贺老师走在教育的最前沿,躬身而行,日夜耕耘.不仅仅惠及烟台大学计算机学院的学生,通过互联网,给无数学子解惑.贺老师大概是" ...

  6. 开心一刻:邪恶的小明

    邪恶的小明(转载) 课堂上,漂亮女老师严肃地给小朋友解释:"乳"就是"小"的意思.比如"乳猪"就是"小猪"," ...

  7. C语言 小明的调查作业

    Description 小明的老师布置了一份调查作业,小明想在学校中随机找N个同学一起做一项问卷调查,聪明的小明为了实验的客观性,他先随机写下了N个1到1000之间的整数(0<N≤1000),不 ...

  8. zzuli oj 1122 小明同学的调查作业

    题目描述:  小明的老师布置了一份调查作业,小明想在学校中随机找N个同学一起做一项问卷调查,聪明的小明为了实验的客观性, 他先随机写下了N个1到1000之间的整数(0<N≤1000),不同的数对 ...

  9. 小明的调查作业java_小明的调查作业

    小明的调查作业 时间限制:1000 ms | 内存限制:65535 KB 难度:1 描述 小明的老师布置了一份调查作业,小明想在学校中请一些同学一起做一项问卷调查, 聪明的小明为了实验的客观性,想利用 ...

最新文章

  1. 卷积神经网络matlab_基于卷积神经网络的遥感图像养殖区自动划分
  2. 放个手机在单位自动打卡_钉钉自动打卡(家校打卡,寒假特辑)
  3. 自定义组合控件:Banner、轮播图、广告栏控件
  4. while(scanf(%d,n)!=EOF)
  5. java启动100线程_Java启动新线程的几种方式(Runnable、Callable、CompletableFuture)
  6. java有参数 无参数方法
  7. curl和wget的区别和使用
  8. LINQ学习中需要明确的几点问题
  9. JVM飙高排查脚本-结构分析
  10. uniapp开发原生android插件,获取浏览器cookie
  11. 最全教程:微信小程序开发入门详解
  12. 企业私有云存储选NAS还是私有云盘?3分钟带你了解企业NAS和企业云盘的区别
  13. 利用matlab画地图
  14. Excel怎么一次性删除数据末尾的空格
  15. docker离线安装与卸载
  16. 如何有效实现软件的需求管理 - 2
  17. 各品牌主板设置U盘启动方法以及菜单快捷键
  18. Druid.io系列(一):简介
  19. 随机种子 seed()
  20. 2022-2028年中国第三方电子支付市场投资分析及前景预测报告

热门文章

  1. WPF——ViewBox控件
  2. Ant Chmod命令详解
  3. NP-Hard问题--世界七大数学难题之首
  4. AES解密失败 WxMaCryptUtils.decrypt(sessionKey,encryptedData, iv)
  5. 硕士研究生毕业论文检测加强通过率的四大方法
  6. http://localhost:8080打不开
  7. 【管理知多少】通过现象看本质,小王和小张谁更胜任?
  8. 一种实现ISA/IEC 62443操作技术标准的零信任应用简化模型
  9. android 启动图片 大小,ios 和安卓常用图标、启动图 尺寸
  10. FLASH知识及读写擦除规则