操作系统和硬件决定了程序的运行环境,同一类型的硬件可以选择安装多宗操作,从程序运行环境这一角度来考量硬件时,CPU的种类是特别重要的参数系统,CPU只能解释其自身固有的机器语言。不同的CPU能解释得机器语言的种类也不同。机器语言的程序称为本地代码。文本文件在任何环境下都能显示和编辑,我们称之为源代码
计算机的硬件并不仅仅是由CPU构成的,还包括用于储存程序指令和数据内存,以及通过I/O链接的键盘,显示器,硬盘,打印机等外围设备。
在wendows的应用软件中,键盘输入,显示器输出等并不是直接向硬件发送指令,而是通过Windows发送指令来间接实现。因此,程序员就不用注意内存和I/O地址的不同构成了。
应用程序像向作系统指令的途径称为API,他提供了任何应用程序都可以利用任何函数组合,不同系统的API是有差异的,将同样应用程序移植到其他操作系统时,必须要重写应用中用到API的部分。,在同类型操作系统下,不管硬件如何,API基本上没有差异,因而,针对某特定操作系统的API所编写的特定程序,在任何硬件上都可以运行。
Unix系列操作系统FreeBSD,存在一种名为Ports的机制。该机制能够结合当前运行的硬件环境来翻译应用的源代码,进而得到可以运行的本地代码。如果目标应用到源代码没有硬件上的话,Ports就会自动使用FTP,连接到相关站点来下载代码。
BIOS系统,BIOS存储在ROM中是预先内置在计算机内部的程序。引导程序是存储在启动驱动器起始驱动的小程序