一个64位操作系统的设计与实现

田宇
前言 这不是一本由几万行代码简单罗列成的书,也不是一本由各种技术文档堆砌成的书。当你在学习计算机操作系统原理时迷失了方向,它会为你点亮一盏灯,照亮前方的路。 计算机相关专业的读者们在大学时都学习过《操作系统》这门课程。对于什么是操作系统,老师们普遍以理论概念为主进行教授,比如,什么是进程,什么是线程,什么是文件系统等知识点。可是,像进程与线程的创建过程、空间换时间的应用场景等内容却鲜有提及。以上这些问题,我在学生时代的时候特别想弄清楚,但却无从着手,就算有些思路,也因为学艺不精,半途而废了。即使向老师们请教,也只得到理论性的解释,无法获得清晰、准确、具体的答案。我想,也许正在阅读本书的你们也难以将其缘由娓娓道来。不过,可能有些人觉得没有必要非常清楚这些问题,以前的我也曾有过此种想法。待到有幸从事几年Linux内核级的研发工作后,我才逐渐对上述问题有了比较直观、深刻的认知,并且慢慢体会到,如果不清楚操作系统原理,某些问题解决起来非常困难。 在计算机领域,中国的发展速度仍然落后于发达国家,师资力量不足是在所难免的。一些学校只是概括性地传授微机原理、汇编语言、计算机组成原理、编译原理、操作系统等基础知识,甚至还可能只将它们作为选修课程。当时作为学生的我觉得这些课程不重要,没有认真细致学习,但在工作多年的反思中才发现,它们是融会贯通计算机领域的必要知识,它们往往决定了一个人能在计算机行业走多远。而且,目前中国软件行业仍以外包为主,能够静下心来做技术储备、基础知识培训的自主研发型公司少之又少,这种局面使得我们想在工作中弥补基础知识依然十分困难。 现今,网络上已有不少关于操作系统实践类的文章和图书,这些文章和图书作为入门学习是很不错的选择。可是,这些文章和图书内容的一个通病是,操作系统普遍采用Intel 32位处理器的虚拟平台进行开发、研制。这个32位处理器的虚拟平台虽然学起来简单,…
作品载入中,请稍候 ...
扫码下载客户端
手机/Pad随时读