这一章开头的问题就难住了我,不像前几章我还能答上来几个,这一章我一个都答不上来,看了作者给出的这几个问题的解析才有点理解。
第一节作者说运行环境=操作系统+硬件,因为运行环境是这两者的综合。也就是说,操作系统和硬件决定了程序的运行环境。
接着讲了从程序的运行环境这一角度来考量硬件时,cpu的种类是特别重要的参数,其实这个是毋庸置疑的,CPU作为计算机的核心部件,发挥着不可替代的作用。以前我觉得因为计算机只能识别机器语言所以CPU也是一样的道理,没想到CPU只能解释其自身固有的机器语言,不同类型的CPU能解释的机器语言的种类竟然也不相同。
以前我在中专学了一个概念:“API”,以前只是学了它的概念叫应用程序编程接口,在这一章作者把它作为一节来讲,作者用比较官方的话阐述了它的概念:"应用程序向操作系统传递指令的途径"不同操作系统的API是有差异的,将同样的应用程序移植到其它操作系统时必须重写应用中利用到API的部分。而在同类操作系统下,不管硬件如何,API基本上没有差别。
接着又讲了Unix系列操作系统FreeBSD的Ports机制然后讲了虚拟机和提供相同环境的Java虚拟机,从它的名字就可以知道虚拟机就是充当虚拟计算机的程序,在当前操作系统上运行,并向用户操作系统提供虚拟硬件,用户操作系统可以像计算机上的其它软件一样运行在主机操作系统上的窗口中,可以说,从用户操作系统的角度来看,虚拟机是一台真实的物理计算机。
最后简单的讲了BIOS和引导程序的概念。这两个概念比较简单,以前也学过。总的来讲这一章主要讲了应用程序的运行环境,并对源代码和本地代码进行了简单的说明。