Windows Linux 与Fushsia的粗略对比

从操作系统的设计理念感觉Fuchsia可以成为21世纪的主流操作系统

主题WindowsLinuxFushsia
一切皆?ObjectFileObject
内核偏微内核偏宏内核(偏)微内核
事件同步对象Event,需要主动使用signal,被动调用函数结合的Object Signal模型
不支持signal及可直接实现它的机制
安全Object属性文件权限【简单但弱后】+ACL+selinuxObject权限
内存权限对内存块Section的封装无【落后】pager, VMO,VMAR
对象跨进程传递
传递成本
非常不依赖父子关系
极低(只需复制handle)
非常依赖父子关系【落后】
极高(参考Android Binder实现)
【落后】
仿go.Channel思想
极低(channel移动对象)
任务组织job,进程,线程,纤程Session组,进程组,线程对应内核进程job,进程,线程
进程创建创建新进程并允许继承对象通过fork半复制进程,Bug丛生,
继承全部文件对象,安全性堪忧
【常见场合fork令人恶心】
launchpad库重新创建进程
不支持fork
文件读取对Channel IPC服务对话
目录可见硬盘分区可见操作系统组织的目录似乎只能看到本程序目录
posix线程较为完整较为完整部分支持,不支持进程共享的互斥锁
signal简陋支持,在实践中几乎不采用历史包袱极重,
开发者难以应付且无法避免,
多组织合作开发时极易导致bug
【落后】
不提供使其他线程跳出的方法
无信号安全概念
fork不支持
可以通过Object继承小范围模拟
全量继承对象,重度依赖fork,
对多线程程序支持有限,难以使用【落后】
完全不支持
各种锁的Object皆抽象为futex
隔离exe几乎谈不上隔离【落后】
wsl&进程级UWP沙箱
docker小系统级沙箱进程级完全沙箱
服务较为先进但可能被流氓软件利用,管理员控制有限内核线程
乱七八糟?
优秀简明?
驱动允许闭源的驱动乱七八糟?允许闭源的DDK框架

我对posix的态度:这是个被某政府要求实现的标准,其指明了一系列应当实现的功能,但如果操作系统仅实现了posix要求的功能,那就是个落后的操作系统,其更新频率缓慢,难以满足现实中复杂的需求。

转载
Fushsia:一次对操作系统的重构

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值