机制与策略——陈莉君
转自:http://www.zeuux.com/blog/content/1729/
Unix/Linux的接口设计有一句通用的格言“提供机制而不是策略”。区别对待机制(mechanism)和策略(policy)是Unix设计中的一大亮点。大部分的编程问题都可以被切割成两个部分:“需要提供什么功能”(机制)和“怎样实现这些功能”(策略)。如果由程序中的独立部分分别负责机制和策略的实现,那么开发软件就更容易,也更容易适应不同的需求。
开源 - 展现在我们面前的是数以千计的代码,在那一行行的代码背后,到底蕴藏着怎样的设计思想,高手们曾怎样苦思冥想。在一堆堆的代码面前,有时候,我们很容易迷失曾经进来的入口,而掉入符号,变量以及函数堆积成的沼泽地。
操作系统的本质是什么?管理者?亦或服务者?但,归根结底,它是一个执行者:执行用户程序 - 所谓为用户服务;执行中断- 所谓为外设服务;执行系统调用 - 所谓解放程序员(姑且说它为广大的程序员服务,因为程序员不再与繁杂的硬件打交道了);执行内核线程-为操作系统自身服务。而这所有执行的核心,无非是在恰当的时机,让哪个对象(程序,线程,中断服务程序,中断的下半部,系统调用)占有CPU 。换句话说, Unix/Linux 抽象出对这些对象的执行机制:
- 程序的执行机制 - 进程
- 内核函数的执行机制 - 线程
- 中断服务程序的执行机制 - 中断信号触发
- 中断下半部的执行机制 -softirq , tasklet ,工作队列
- 系统调用的执行 - 软中断( int $0x80 触发)
机制与策略——陈莉君相关推荐
- 《Linux内核完全剖析-基于0.12内核》书评之陈莉君
<Linux内核完全剖析-基于0.12内核>书评之陈莉君 <Linux内核完全剖析-基于0.12内核>一书出版之后,机械工业出版社编辑希望我就此书抽空写一个书评.在我拿到这本书 ...
- 陈莉君老师写的中断絮说(经典+幽默)
陈莉君老师对中断的理解和解释,文章写的太精彩了,看完后对中断这个操作系统级的概念有了新的认识,也对 操作系统更加了解了. P.S. 不敢独自享有,这样会睡不好觉的.(本来最近就老失眠了) Enjoy ...
- 陈莉君老师写的中断絮说
陈莉君老师对中断的理解和解释,文章写的太精彩了,看完后对中断这个操作系统级的概念有了新的认识,也对 操作系统更加了解了. P.S. 不敢独自享有,这样会睡不好觉的.(本来最近就老失眠了) Enjoy ...
- 计算机系统备份的原则和策略,计算机系统数据备份机制与策略
计算机系统数据备份机制与策略 20年第5 05期 华中电力 第 l卷 8 计算机系统数据备份机制与策略 耿煜 (樊学院机械系,北襄樊襄湖 4 15 ) 4 03 摘要:针对当今计算环境中不断增长的数据 ...
- 驱动思想之机制和策略
驱动程序的角色 作为一个程序员, 你能够对你的驱动作出你自己的选择, 并且在所需的编程时间和结果的灵活性之间, 选择一个可接受的平衡. 尽管说一个驱动是"灵活"的, 听起来有些奇怪 ...
- Linux看硬盘同步,从磁盘同步看linux的机制和策略
linux操作系统是典型的机制和策略相分离的系统,机制和策略一直是设计领域一直关注的重要问题,它们的结合程度直接关系到系统的稳定性和可扩展性.今天做了一个linux上膝上电脑的电源管理的脚本,颇有感触 ...
- 驱动设计思想(机制、策略、分离、分层)
1.机制和策略 (1)机制就是提供什么功能,策略就是怎么使用这些功能.在编写驱动时需要在编程时间和驱动的灵活性之间取一个可接受的折中,驱动提供机制,尽量不提供策略,策略让上层应用去做. (2)机制和策 ...
- linux内核ppt刘小明,【陈老师华为北研所讲座PPT】从机制与策略探究Linux内核设计之道(4)...
原标题:[陈老师华为北研所讲座PPT]从机制与策略探究Linux内核设计之道(4) 解放编译程序,以统一的方式分配逻辑地址. 首先内核通过映射机制把进程的虚拟地址映射到物理地址,在进程运行时,如果内核 ...
- 机制和策略相分离原则
这些天大刀阔斧修改了我们的alsa音频驱动,更深切理解了机制和策略分离的重要性. 说来惭愧,Linux Device Drivers一书翻来覆去查阅了无数遍,却忽视了绪论中的一句话:区分机制和策略是U ...
最新文章
- Python中常用的一些操作总结(未完待续)update @ 2017-5-18
- gdb / 调试进入 so 库的方法
- React学习:事件绑定、组件定义、for、map循环-学习笔记
- 读《C++ Primer(第三版)》的一些疑问(不断更新)
- 3.11 随机初始化
- 知乎在线部分的技术架构
- CFree 5.0最新注册码
- W3CSchool CHM API 帮助文档(全)
- Arduino GPS 车速表(Arduino流体力学燃油效率计)(更新:2022.7.3)
- 直播类 APP 项目开发实战(原理篇)
- 《计算机网络:自顶向下的方法》课后习题_第二章
- U8采购订单联查采购入库单
- Mac OS 开机密码重置
- 恩尼格玛机(字母转换,水题)
- 多元素过渡理解和一点透
- Java 添加Word项目符号、编号列表
- App怎样提高推广转化率
- Liunx网络技术管理及进程管理
- Style Transfer(PyTorch)
- 加价出票成机票ssjj网站潜规则