读王垠《一种新的操作系统设计》

王垠博客链接:王垠《一种新的操作系统设计》。

原文摘要

特点

  • 操作系统由某种高级语言写就,一个个小函数组成,所有的代码都是“库代码”

  • 进程之间通信,统一使用某种高级语言提供的数据结构

  • 运行环境是“有自动内外存数据交换功能的 JVM”,避免指针

  • 内存管理的粒度是数据结构,不是页

  • 系统调用就是对系统函数的调用,只有系统函数拥有设备的引用

  • 不另设命令行脚本,而是采用某种高级语言的交互解释器

  • 所有数据作为“结构”(而不是文件)保存在一个分布式数据共享空间

  • 进程的运行时数据自动同步到磁盘

  • 进程可以在机器间迁移

好处

我能理解的好处:

  • 进程通信不需要编码解码
  • 不需要 SQL
  • 不需要命令行脚本
  • 远程调用简单
  • 进程持久化(在外存中保存程序断点)
  • 自动外存管理

个人理解与疑惑

  • 这种操作系统的主要特点是,使用一种程序设计语言完成所有的工作,即硬件驱动、系统内核、应用开发、数据管理……那么这种语言的设计缺陷是否会造成更大的问题呢?
  • 另一个主要特点是,取消了数据库的必要性。用统一的高级语言处理业务逻辑和数据查询代替 SQL 容易理解,但这会让现在独立的数据库管理系统变为“数据管理函数库”。现在的数据库虽然查询不方便(看看工程师积累的复杂使用经验),但是并发管理、数据完整性、权限管理等功能隐藏得很好。使用函数库做相同的事情是否合适?

未来展望

未来的系统

当我们没有计算机的时候,编程不是问题;当我们有计算机了以后,编程成了问题;当我们有了大型的计算机的时候,编程就成了巨大的问题。

软件开发的复杂度很高,这是问题固有的复杂度还是基础设施的设计缺陷?“数学是神的学科,计算机是人的学科”,要区分固有的复杂和设计带来的复杂并不容易。

“书同文,车同轨”,统一带来效率。如果新一代操作系统能整合:

  • 内存与外存
  • 本地与网络
  • 数据格式与数据结构
  • 应用程序与系统程序

就能将操作系统和数据库管理系统整合在一起!

未来的编程

未来的编程,程序员只需要面向为数不多的几个(最好是一个)逻辑结构编程——不用考虑存储结构,集中精力在抽象表达式树的正确性上。未来的编程原则会认为,使用指针是逻辑层向物理层的僭越,性能优化完全针对解释器,和抽象表达式树无关。

总之,计算机程序的构造和解释应该彻底解耦合。

读王垠《一种新的操作系统设计》相关推荐

  1. wangyin 一种新的操作系统设计

    我一直在试图利用程序语言的设计原理,设计一种超越"Unix 哲学"的操作系统.这里是我的设想: 这种系统里面的程序间通信不使用无结构的字符串,而是使用带有类型和结构的数据.在这样的 ...

  2. 读王垠的“清华梦的粉碎”有感

    无意之中转载了一篇王垠的"王垠:如何掌握程序语言".恰好有人看了评论了一句:"清华大学退学博士王垠?"于是百度了一下王垠这个人,在百度百科里看完了他写的&quo ...

  3. 王垠——想得太多,做得太少

    我大四的时候,读到王垠从清华退学的文章,当时我虽然还没有正式开始攻读博士学位,但是也在实验室待了一年多了,老油条一根,对清华的博士生的学习生活了解得差不多了.当时读王垠的文章,我开始很不解:就剩一年, ...

  4. 点评一下王垠的新博文: Oberon 操作系统:一个被忽略的珍宝

    远古邪恶巨坑的日记 远古邪恶巨坑的主页 广播 相册 喜欢 活动 发豆邮 点评一下王垠的新博文: Oberon 操作系统:一个被忽略的珍宝 2013-03-08 16:31:26 原文链接: http: ...

  5. 电子货架标签------一种新用法(手机APP直接操作)

    不少客户在电子货架标签方面都有一种困惑:我使用不多的情况下,如何实现简单使用,不希望操作更复杂的后台对接,服务器安装等过程,可否实现简单使用,答案是:有 我们团队的小伙伴针对这一块的应用专门开发了一款 ...

  6. 读《王垠:当然我在扯淡》

    上周因阿里面试事件,关注到王垠 [yin 第二声]. 这几天断断续续通读了他博客上的文章.这感觉就像在一个偏僻的地方,你精疲力尽,饿的头脑发晕,前面突然出现一家不知名的小餐馆,里面的酒呀.鱼呀全部是你 ...

  7. DeFi猎手丨一文读懂DeFi的7种新玩法,实现最大化收益

    概要: 上周我们对7种新的DeFi玩法进行了报道,其中涵盖了新方向(DeFi指数).新玩法(杠杆流动性挖矿).新提案(Aave新架构).新创意(DeFi+二元期权).新工具(套利机器人). DeFi新 ...

  8. 王垠:我和权威的故事

    转自王垠博客,我是垠粉. 每个人小时候心里都是没有权威的,就像每个人小时候也都不相信广告一样.可是权威就像广告,它埋伏在你的潜意识里.听一遍不信,听两遍不信,--,直到一千遍的时候,它忽然开始起作用了 ...

  9. AI人工智能的局限性--王垠

    人工智能的局限性 有人听说我想创业,给我提出了一些"忽悠"的办法.他们说,既然你是程序语言专家,而现在人工智能(AI)又非常热,那你其实可以搞一个"自动编程系统" ...

最新文章

  1. 使用jQuery开发messager消息框插件
  2. 图灵奖得主Judea Pearl:人工智能是如何走出死胡同的?
  3. 在失败中学习,MIT新研究显示,机器可以像婴儿一样学会理解人类目标
  4. Happy Holidays and Season's Greetings Everyone!
  5. axure 链接html文件,通过WuliHub免费托管原型Axure HTML文件
  6. CodeForces - 868F Yet Another Minimization Problem
  7. php中学院与专业的级联,SQLite中使用CTE巧解多级分类的级联查询
  8. 计算机excel函数试题,2014职称计算机考试Excel试题函数练习题
  9. OpenGL 中的 Render To Texture
  10. linux系统如何使用ocr图片文字识别
  11. 如何免费且快速的搭建个人网站
  12. 站在巨人的肩膀上--邵泓鑫
  13. Excel打开CSV文件,数字起始0丢失问题
  14. UniswapV2配对合约里的函数选择器与事件选择器
  15. QQ收集表图片批量导出
  16. 中国铁路信息化行业规划布局及投投资可行性分析报告2022-2028年版
  17. IDEA全局搜索Jar包中内容
  18. Cocoapods的安装 简单教程(有待完善)
  19. 在查询分析器里执行数据库的备份和还原操作
  20. python程序设计夏敏捷答案_python程序设计夏敏捷答案

热门文章

  1. 对于母版页的一些修改
  2. 研招考试科目计算机专业课408代表什么?
  3. Open3d Point cloud outlier removal 点云异常值移除
  4. 《我和我的祖国》之《夺冠》:所有人都在欢呼,只有他在哭......
  5. 互联网快讯:阿里多个App接入微信支付;猿辅导布局素质教育;快手推“聚宝盆”
  6. 我的天空 我的未来 我的梦
  7. 山东2021年高考成绩查询状元,2021年山东高考状元多少分,今年山东高考状元资料名单...
  8. Linux 网卡配置文件设置
  9. ATFX:离岸人民币破7.3, 调控思路下,人民银行或有大动作
  10. 一个人如何完成一整个网站的开发(推荐好文,看完绝对让你回味无穷)