unix更喜欢进程,可是...
看看windows,虽然我们以为它的内核是杂糅的,但是虽然它不是基于进程的,但是更进一步,它是基于对象的,对象之间可以基于接口互相通信,并且对象之间遵循严格的访问控制规则,linux内核一旦被侵入,那么入侵者可以毫不费力的获得一切权力,windows内核一旦被侵入,在硬件意义比如x86的意义上,入侵者也是可以为所欲为,然而因为有严格的对象间访问限制,你需要付出更多时间和精力,除非你是一个顶级hacker,最关键的,windows使用了每进程的工作集,这也许是windows对自己进程调度算法的不太信任吧。这个意义上,windows才是真正基于小对象的,进程对于它来讲都是很大的对象了,起码还有线程,windows虽然在对待进程线程这个问题上没有像linux那样实现嵌套组织方式(task_struct的组合模式),起码实现了一个包含的设计模式。
以上言语似乎不伦不类,我到底褒谁贬谁呢,其实我还是喜欢unix传统的,说实在的,我理解的unix的进程传统和Eric是一样的,这可不是自夸,进程传统是提供给用户的,而不是内核的实现方式,实现分离进程的内核是需要付出代价的,付出的代价开销必然要损害用户空间的性能,因此linux并不在内核特别在意进程或者对象,这确实可以带来效率的提升,举一个简单的例子,在内存置换算法中,如果是windows的基于进程工作集的算法,那么必然要涉及一系列的预测算法,比如预测哪个进程是活跃进程等等,那么如果预测失误,就会导致很大的内存被浪费,而unix/linux中并没有这么复杂的算法,它尽可能使用所有的内存,然后根据用户的短期行为进行置换行为的微调,即使对某一个进程暂时不公平,那么也不会造成内存的浪费。最重要的不是一个操作系统内核怎么实现,而是它提供给用户基于什么的用户接口。
本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1271992
unix更喜欢进程,可是...相关推荐
- 程序员修神之路--高并发下为什么更喜欢进程内缓存
菜菜哥,告诉你一个好消息 YY妹子,什么好消息,你有男票了? 不是啦,我做的一个网站,以前经常由于访问量太大而崩溃,现在我加上了缓存,很稳定啦 加的什么缓存呢? 我用的redis,号称业界最快的缓存组 ...
- 我为什么更喜欢 Mac OS X
我为什么更喜欢 Mac OS X 自从苹果的iPhone和iPad在市场上取得傲人的成绩之后,国内的用户对于苹果的MacBook笔记本以及iMac机器的热情也越来越高.但是很多人是买了Apple的电脑 ...
- 几个大神程序猿更喜欢用的Python编辑器!
作为开发者来说,肯定都有自己比较喜欢使用的编辑器,有的人喜欢这个,有的人喜欢那个,还有的大神就喜欢用记事本,今天小千就来给大家介绍几个大神程序猿更喜欢用的Python编辑器. 1.Sublime Te ...
- C++/Python/Java/C,四大语言对比,你更喜欢哪种?
现如今,互联网时代已经是风生水起,IT技术人才更是层出不穷.但学习在精不在多,总要有一方面精通才是自己的资本.面对众多的编程语言,Java.C语言.C++.Python等编程,你更喜欢哪种? 虽说C语 ...
- 扬州和苏州计算机发展前景,地理答啦:扬州和苏州这两座城市,你更喜欢的是?...
原标题:地理答啦:扬州和苏州这两座城市,你更喜欢的是? 对于这个问题,地理知识与旅行资讯专家--地理答啦认为,扬州和苏州都是自己喜欢的城市,两个城市各有特色.从经济发达程度上看,个人更喜欢苏州. 在地 ...
- 纸上原型设计 VS 桌面原型工具设计,你更喜欢谁?
2019独角兽企业重金招聘Python工程师标准>>> 纸上原型设计,作为传统的原型设计方式,简单快速,成本低廉,为大部分设计师所喜爱.而桌面原型工具设计,作为伴随电脑科技发展而出现 ...
- AI一分钟 | 刚爆Python将进入高考,AI就已强势进入公务员国考试卷;报告称1/4男性更喜欢跟机器人谈恋爱,真的吗?
一分钟AI 人工智能进入国考试卷 上百万人参加2018年度国考笔试,我们距离AI还有多远? 发改委正在牵头制定智能汽车创新发展战略,2级水平以上的自动驾驶在2020年要达到10%左右 未来你会跟机器人 ...
- 南京、苏州、杭州、上海你更喜欢哪座城市?
南京.苏州.杭州.上海你更喜欢哪座城市? 这个问题笔者来回答,实在是很合适.笔者在这四个城市里工作过,以出差做SAP咨询项目的方式,在这些城市里至少生活过半年.在这些城市生活期间笔者游历了这些城市的各 ...
- (转)javascript 杂谈之哪种写法你更喜欢?
原文地址:http://www.cnblogs.com/baochuan/archive/2012/04/30/2473771.html 思维导图 介绍 老是在写js,你平时是怎么写你的js呢?更喜欢 ...
最新文章
- spark_updateStateByKey
- 分析JVM双亲委派模型的类加载源码 自定义类加载器
- Eclipse使用gradle编译时,使用固定的jdk版本进行编译(修改gradle的jdk编译版本)
- 深入学习python内存管理
- 测试ASP_NET 生命周期
- getResourceAsStream总是返回null以及intellij总是提示Argument ‘inputStream‘ might be null
- python爬虫爬取大众点评并导入redis
- 服务器安装什么文件可以获取密码,服务器ssh密码在哪获取
- bin code led_-/bin/sh: ./led: not found的解决办法
- 刚刚,“国民”APP微信崩了!官方致歉:已经逐步恢复
- android studio找不到r文件,Apk 中找不到r类文件
- 如何从完好的数据文件恢复oracle数据库
- hibernate 映射错误
- python爬取公众号
- 多元函数中的偏导数全导数以及隐函数
- 程序员必读书籍排行榜
- mysql的建表赋权_mysql创建用户并赋权
- 微信8.0状态背景视频合集
- 04-mysql数据备份之mysqldump命令详解
- Java类名的命名规则
热门文章
- XXL-JOB v2.0.2,分布式任务调度平台 | 多项特性优化更新
- openJDK之sun.misc.Unsafe类CAS底层实现
- 宁波Uber优步司机奖励政策(1月18日~1月24日)
- Teradata join 优化
- 微软发布了Spartan项目的细节,并证实了某些流言
- 【电信增值业务学习笔记】8 3G视频类增值业务
- python argsort排序结果_numpy.argsort()可以对元组或列表进行排序
- SD-WAN — 核心能力
- Docker 容器技术 — Dockerfile
- EdgeGallery — OpenStack VIM