第七章主要讲程序在怎样的环境下运行。一般来说,应用程序的运行环境是指操作系统的类型以及硬件(CPU、内存等)的类型和性能指标。
运行环境=操作系统+硬件
Windows克服了CPU以外的硬件差异
不同操作系统的API不同
FreeBSD Port帮你轻松使用源代码
Ports机制是porting(移植)的意思,我介绍这个的目的就是表明这种机制可以实现同一份源代码可以在不同硬件环境下编译并运行起来
- 利用虚拟机获得其他操作系统环境
- 提供相同运行环境的Java虚拟机(JVM)
java源代码(xxx.java)经过java编译器编译后,生成java字节码(xxx.class),java字节码在jvm(java.exe)中运行,jvm一边把java字节码转成本地代码(机器语言),一边运行,不过这种方式现在可能有做优化
站在操作系统的角度,jvm是一个应用程序;站在java源码的角度,jvm是一个执行环境
BIOS和引导 - BIOS(Basic Input/Output System)存储在ROM(只读存储器)中,是出厂时内置在计算机中的程序
- BIOS的功能除了键盘、磁盘、显卡等控制程序外,还有启动引导程序的功能
- 引导程序:存储在启动驱动器(硬盘、u盘、光盘)起始区域中的小程序。引导程序的作用是把启动驱动器中的操作系统加载到内存中运行
- 开机流程:BIOS检查硬件是否都运行正常,确认正常后就会启动引导程序,然后引导程序再加载操作系统
- 引导程序(Bootstrap)的原意是靴子上的拔靴带,方便穿靴子用的