作者回复: 1、程序运行不需要操作系统支持,有bios支持就可以(把控制权交给它)。编译器可以独立于操作系统存在,而且它应该先于操作系统产生。
2、语言诞生的过程是这样的:机器码 =》汇编 =〉C =》C写的汇编,C写的C(自举)。当然这个过程不需要每次新架构的cpu或操作系统都重新来一遍,因为人是聪明的,发明了交叉编译这样的东西,C =〉新平台的C,这样就一下子完成整个语言的进化了。
作者回复: 架构在于创造,如果你从事的事情总是重复别人,那这个公司又有何价值?即使有所参考,也应该有自己的精气神,这个精气神是需要架构师把它干出来的
作者回复: 挺好的思考
作者回复: 挺好的问题。后面会在第三章服务端开发再次讨论操作系统,会探讨它的演进历程和方向。
作者回复: 很多时候是思维方式的转变。首先要尝试去做前瞻,预测错了并不可怕,但可以事后复盘到底是缺失了什么重要的信息让你判断出现什了偏差。
作者回复: 和技术没关系,是人性的问题。手机是人体器官的延伸,是门面,用户不会接受白牌机的,所以手机不是技术上做不到兼容机,而是人性上不会接受白牌机。
作者回复: 历史阶段不同。PC的历史再演一遍,可能会是完全不同的结果。
作者回复: 不会
作者回复: 1、这里的输入与输出设备,是指用户输入和面向用户交互的输出设备,不同于冯诺依曼结构中提到的输入输出设备(泛指所有设备,包括存储设备和网络设备)。输入与输出设备管理合并为一章并不是因为它的内容少,而是因为它不是本章的重点。
2、PC 兼容机是指白牌机,没有品牌或品牌几乎没有知名度。而且很多白牌机连操作系统都没有预装,硬件厂商没有意识到预装是一个巨大的市场。
作者回复: 我觉得在计算机的基础架构体系中,操作系统是最值得研究的,最值得反思和复盘的。本章从架构的第一步需求分析入手,我们花费的主要的篇幅集中在需求的演化上。