摘要: 操作系统接管硬件以后发生的事情,也就是操作系统的启动流程。 因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多;但一旦进入操作系统,程序员几乎可以定制所有方面。所以,这个部分与程序员的关系更密切,下面的内容针对的是Debian发行版。 第一步、加载内核 操作系统接管硬件以后,首 阅读全文
posted @ 2016-03-16 17:30 蚂蚁吃大象、 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 零、boot的含义 "启动"用英语怎么说?回答是boot。boot原来的意思是靴子,"启动"与靴子有什么关系呢? 原来,这里的boot是bootstrap(鞋带)的缩写,它来自一句谚语: "pull oneself up by one's bootstraps" 字面意思是"拽着鞋带把自己拉起来", 阅读全文
posted @ 2016-03-16 17:22 蚂蚁吃大象、 阅读(267) 评论(0) 推荐(0) 编辑
摘要: Event Loop介绍 想要理解Event Loop,就要从程序的运行模式讲起。运行以后的程序叫做"进程"(process),一般情况下,一个进程一次只能执行一个任务。 如果有很多任务需要执行,不外乎三种解决方法。 (1)排队。因为一个进程一次只能执行一个任务,只好等前面的任务执行完了,再执行后面 阅读全文
posted @ 2016-03-16 12:38 蚂蚁吃大象、 阅读(774) 评论(0) 推荐(0) 编辑
摘要: 为什么寄存器比内存快 计算机的存储层次(memory hierarchy)之中,寄存器(register)最快,内存其次,最慢的是硬盘。 原因一:距离不同 距离不是主要因素,但是最好懂,所以放在最前面说。内存离CPU比较远,所以要耗费更长的时间读取。 以3GHz的CPU为例,电流每秒钟可以振荡30亿 阅读全文
posted @ 2016-03-16 12:25 蚂蚁吃大象、 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 进程和线程 进程(process)和线程(thread)是操作系统的基本概念,下面用一个类比,来解释它们。 1. 计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。 2. 假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含 阅读全文
posted @ 2016-03-16 09:09 蚂蚁吃大象、 阅读(205) 评论(0) 推荐(0) 编辑