1. 什么是操作系统中的系统调用
linux操作系统里面的“系统调用”这一概念相当于windows上面的api,这样你就明白了吧,懂编程的应该都知道windows
api是个什么东东。所不同的是linux系统调用的需要包含头文件比较分散,这一点在使用时需要注意,不同的系统调用记得要#include对应的头文件。
2. 系统调用的作用是什么
调用其实就是把相关作业(也可以说是程序)从系统外存调入内存执行,现在的一般采用的是三级存储结构,即主存(内存)——cache——辅存(外存),这三者之间采用有一定的影射关系,首先把程序从外存调如cache(缓存),再从cache中调入内存,cache的作用是缓解内存与外存之间速度的不匹配,具体的可以参考《操作系统》之类的书,其中还有一个虚拟存储的问题。
3. 什么是系统调用
系统调用时由操作系统实现提供的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。是应用程序同系统之间的接口。
操作系统的主要功能是为管理硬件资源和为应用程序开发人员提供良好的环境来使应用程序具有更好的兼容性,为了达到这个目的,内核提供一系列具备预定功能的多内核函数,通过一组称为系统调用(system call)的接口呈现给用户。
系统调用把应用程序的请求传给内核,调用相应的的内核函数完成所需的处理,将处理结果返回给应用程序。
(3)电脑系统调用目的扩展阅读
对于一般通用的OS而言,系统调用分为三大类:
1、进程控制类系统调用
主要用于对进程控制的系统调用有:
(1)创建和终止进程的系统调用。
(2)获得和设置进程属性的系统调用。进程的属性包括有进程标识符,进程优先级,最大允许执行时间等。
(3)等待某事件出现的系统调用。
2、文件操纵类系统调用
(1)创建和删除文件
(2)打开和关闭文件的系统调用
(3)读和写文件的系统调用
3、进程通信类系统调用
在单机处理系统中,OS经常采用消息传递方式和共享存储区方式。
当采用消息传递方式时,通信前需先打开一个连接。为此,应由源进程发出一条打开连接的系统调用,而目标进程则应利用接受连接的系统调用表示同意进行通信;
然后,在源和目标进程之间便开始通信。可以利用发送消息的系统调用或者用接收消息的系统调用来交换信息。通信结束后,还须再利用关闭连接的系统调用结束通信。
用户在利用共享存储区进行通信之前,须先利用建立共享存储区的系统调用来建立一个共享存储区,再利用建立连接的系统调用将该共享存储区连接到进程自身的虚地址空间上,然后便可以利用读和写共享存储区的系统调用实现相互通信。
4. 系统调用与操作系统及模式(用户模式和内核模式)操作的概念是如何关联的
1、为了管理硬件资源和为应用程序开发人员提供良好的环境来使应用程序具有更好的兼容性,为了达到这个目的,内核提供一系列具备预定功能的多内核函数,通过一组称为系统调用(system call)的接口呈现给用户。系统调用把应用程序的请求传给内核,调用相应的的内核函数完成所需的处理,将处理结果返回给应用程序。
2、具有多任务处理的功能,通常靠进程来实现。
3、为了安全问题,一些I/O操作的指令都被限制在只有内核模式可以执行,因此操作系统有必要提供接口来为应用程序提供诸如读取磁盘某位置的数据的接口,这些接口就被称为系统调用。
4、当操作系统接收到系统调用请求后,会让处理器进入内核模式,从而执行诸如I/O操作,修改基址寄存器内容等指令,而当处理完系统调用内容后,操作系统会让处理器返回用户模式,来执行用户代码。
5. 操作系统为什么要提供系统调用
系统调用是在运行程序和操作系统之间的接口,通常以汇编语言指令形式提供的。 用户在程序中调用操作系统中的功能子模块。或操作系统核心中设置了一组用于实现各种系统功能的子程序,提供用户程序调用。
6. 操作系统的作用和目标
操作系统的功能是进行处理机管理、( 存储器 )管理、设备管理及文件管理。
操作系统是一组( 资源管理 )程序。
操作系统的目标:
1、方便性(用户的观点):
使计算机系统更容易使用。
2、有效性(系统管理人员的观点):
提高资源利用率,提高系统吞吐量。
3、可扩充性(开放的观点):
便于增加新的功能和模块
4、开放性 :系统能支持世界标准规范。
CPU、存储器、I/O设备、文件(数据和软件);
管理的内容:
资源的当前状态(数量和使用情况)、
资源的分配、回收和访问操作,
相应的管理策略(包括用户权限)。
在裸机上添加:处理机管理(针对CPU) 、存储管理(针对内存和外存) 、设备管理、文件管理;
把覆盖了软件的机器称为扩充机或虚拟机。
合理组织工作流程:作业管理、进程管理
程序接口是程序员在编写程序时利用操作系统所提供功能的方法,可以在高级语言和汇编语言中使用。
软件的开发依赖于操作系统。开发软件必需在一定的操作系统环境下进行,操作系统所能提供的功能支持在一定程度上决定软件开发的难易程度。
单道批处理系统的处理过程:
利用磁带把若干个作业分类编成作业执行序列,
每批作业由一个专门的监督程序(Monitor)自动依次处理。
可使用汇编语言开发。
在计算机系统中安装一个监控程序Monitor,特点:自动性、顺序性、单道性。
监督程序(monitor),它负责完成用户程序的调入、启动运行、输出运行结果等工作。核心内容是给作业分配运行控制权(即CPU的使用权)。
批处理是指系统对作业的处理都是成批进行的。若内存中始终只保持一道作业,称为单道批处理系统(simple batch system)
多道批处理系统概念
内存中同时存放多道程序,交替执行,共享软硬件资源,提高CPU的利用率。
多道批处理系统的特征:用户脱机使用计算机,成批处理,多道程序处理
多道性:内存存放多个作业、宏观上并行,微观上串行;共享资源
调度性:作业调度(后备队列)、进程调度
无序性:作业先进入内存未必先执行结束
优点:
资源利用率高:CPU和内存及io利用率较高;
系统吞吐量大:单位时间内完成的工作总量大;
缺点:
平均周转时间长:作业的周转时间显着增长;
无交互能力。用户一旦把作业提交给系统,直至作业完成,用户都不能与自己的作业进行交互,修改和调试程序极不方便。
多道批处理系统需要解决的问题:处理机管理、内存管理、I/O管理、文件管理、作业管理、接口问题
时间片,各个程序在CPU上执行的轮换时间
分时是指多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。
交互式作业直接进入内存
以分配时间片方式实现
人机交互性好:
共享主机:
用户独立性:
多路性:多用户宏观上同时使用,微观上轮转
独立性:用户感觉到自己独占计算机
及时性:快速处理
交互性:用户与计算机之间可进行“会话”
要求:响应时间短,在一定范围之内;系统可靠性高。
实时系统指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行。
实时系统的类型
(1) 工业(武器)控制系统。(2) 信息查询系统。(3) 多媒体系统。(4) 嵌入式系统。
实时任务类型
按任务执行是否呈现周期性来划分
周期性的和非周期性的
根据对截止时间的要求来划分
硬实时任务和软实时任务
CP/M
MS-DOS
单用户多任务操作系统的含义是,只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了系统的性能。
允许多个用户通过各自的终端,使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。
多任务是指用户可以在同一时间内运行多个应用程序,每个应用程序被称作一个任务。
并行:两或多个事件在同一时刻发生。
并发:两或多个事件在同一时间间隔内发生。
进程:系统中能独立运行并作为资源分配的基本单位。
进程的并发:
宏观上多个任务同时运行;微观上多个任务在单个处理机上交替运行;
共享:系统中的资源可供内存中多个并发执行的进程共同使用
互斥共享:
一段时间只允许一个进程访问该资源
同时访问:
资源共享性:
宏观上,指多个任务可以同时使用资源;
微观上,指多个任务可以交替互斥地使用系统中的某个资源。
虚拟:多道程序设计使每个用户感觉是独占计算机
通过某种技术把一个物理实体变为若干个逻辑上的对应物(分时或分空间)。
若n是某一物理设备所对应的虚拟的逻辑设备数,则虚拟设备的速度必然是物理设备速度的1/n。
虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。
虚拟处理机 :每个用户(进程)的"虚处理机"
虚拟设备:一台物理设备可以虚拟为多台逻辑设备
空分复用技术---以空间为代价
存储器虚拟
小内存运行大进程。
虚拟内存
多道程序系统中,多个进程并发执行,“时走时停”,
不可预知每个进程的运行推进速度和花费时间
正常系统的判段依据:
无论进程快慢,同样运行环境应该结果相同
--通过进程互斥和同步手段来保证
并发和共享是操作系统的两个最基本的特征,两者之间互为存在条件。
操作系统的·主要功能:处理机管理功能、存储器管理功能、设备管理功能、文件管理功能。
【处理机管理要解决处理机分配调度策略、分配实施和资源回收等问题。】
【 多道环境下,处理机的分配及回收都是以进程为单位,因此处理机管理可归结为进程管理 。】
进程的控制:创建、撤销、状态转换。一般由进程的控制 原语 (原语:执行的过程不能被打断)完成。
进程同步:协调系统中并发执行的进程
控制它们以互斥方式访问共享资源
协调合作完成同一作业
进程通信:负责完成进程间的信息交换。
类型:直接通信、间接通信
调度:按照一定的算法进行cpu分配
作业调度:从后备队列挑选合适的作业,为其分配必要资源,调入内存建立进程,并进入就绪队列。
进程调度:从就绪队列中选出进程,分配cpu,使之运行。
处理机管理功能:进程控制、进程同步、进程通信、调度。
内存分配、内存保护、地址映射、内存扩充
[
将逻辑地址转换为物理地址
程序中,逻辑空间-》逻辑地址(相对地址)
内存中,物理空间-》物理地址(绝对地址)
]
{
将内、外存结合起来管理。利用虚拟存储技术,从逻辑上扩充内存容量
系统应有:请求调入功能、置换功能以支持虚存技术
}
设备管理 :
操作系统与用户之间的接口
用户接口:联机用户接口、脱机用户接口、图形用户接口
程序接口:OS提供一组系统调用供用户程序和其它系统程序调用,完成数据传输,文件操作,资源分配等操作。
表现为低级汇编指令和高级语言的库函数
当前比较流行的微内核的操作系统结构,是建立在层次化结构的基础上的,而且还釆用了客户机/服务器模式和面向对象程序设计技术
GUI:图形用户界面
操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合——它们管理和控制计算机系统中的硬件及软件资源,合理地组织计算机工作流程,以便有效地利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机与其用户之间起到接口的作用。
进程是指,程序的一次执行,包括可执行的程序、程序所需的数据和相关状态信息。进程是资源分配的最小实体,在传统的OS中,进程同时也是系统调度的最小单位。
线程是指,程序的一次相对独立的运行过程;在现代OS中,线程是系统调度的最小单位。
多道批处理系统中,为了充分利用各类资源,系统总是优先选择 计算量和IO量均衡 的多个作业投入运行,为了提高吞吐量,系统总是想方法缩短用户作业的周转时间。
推动批处理系统形成和发展的动力是提高系统资源利用率,推动分时系统形成和发展的动力是方便用户。推动微机系统发展的主要动力是计算机硬件不断更新换代。
操作系统是一种系统软件,它负责为用户和用户程序完成所有的与硬件相关与应用无关的工作。
高级语言的编译不是操作系统关心的主要问题。
在操作系统中采用多道程序设计技术,能有效提高cpu、内存、和IO设备的利用率。为了实现多道程序设计需要更大的内存。
在设计分时系统时,首先要考虑的是交互性和响应时间,设计批处理系统时,首先要考虑的时周转时间和系统吞吐量,设计实时系统时,要考虑的是实时性和可靠性。
分时系统的响应时间主要是根据用户所能接受的等待时间,而实时系统响应时间是由控制对象所能接受的时延确定的。
对于批处理作业,必须提供相应的作业控制信息。
在分时系统中,为方便多个用户能够同时与系统交互,系统必须能及时接受多个用户的输入。
1什么是操作系统?它有什么基本特征?
答:操作系统是为了达到方便用户和提高资源利用率的目的而设计的,控制和管理计算机硬件和软件资源,合理的组织计算机工作流程的软件集合。
它具有并发、共享、虚拟、异步性四个基本特征。
2 什么是操作系统的异步性(不确定性)?
不确定性指在操作系统控制下多道程序的执行次序和每道程序的执行时间是不确定的。
3.影响计算机系统性能的主要因素是什么?
影响计算机系统性能的主要因素分为软件和硬件两个方面:
(1)硬件方面主要是指构成计算机系统器件的性能和硬件的体系结构,如存储器的速度和容量、多处理机结构、总线结构等。
(2)软件方面主要是指操作系统,因为操作系统决定了硬件是否能被用户使用、硬件的功能是否能发挥出来、其他软件能否在计算机系统上运行。
4.一个操作系统能否管理任何种类的计算机?
操作系统是与计算机硬件关系最密切的软件,负责管理计算机系统的硬件资源。
不同种类的计算机有不同的体系结构、处理器、指令系统及不同的硬件配置,操作系统能够管理的软硬件资源受到一定的限制。
一种操作系统只能安装到特定种类的计算机上
5.分别阐述操作系统与硬件和软件的关系
1、操作系统是每台计算机必配的系统软件。
2、OS是软件运行的基础,软件需OS进行有效的管理。
3、软件的开发依赖于操作系统。
4、操作系统影响软件的生命周期。
5、应用软件是操作系统上的可用资源,是OS的基础。
OS的运行需要硬件的支持;OS性能的发挥受硬件影响
OS决定硬件是否能被用户使用,功能能否发挥。
OS与硬件的发展是相互促进的
6实现多道程序系统的最主要硬件支持是什么?
解:中断系统和通道技术。
(1)很多进程的切换是由时钟中断引起的,尤其是分时系统。用户程序进行系统调用时通过软中断来实现,如通道和外设的操作也要向操作系统发送中断。
(2)在多道程序系统中,当CPU要求在主存和外设间传输数据时,通过发出I/0指令命令通道工作,通道独立地在内存和外设问进行数据传输,IO操作完成后,通道以中断方式通知CPU,从而实现了CPU计算与I/0操作的并行。
7、操作系统的什么用户接口,一般用户使用的比较少?为什么?
解:一般用户主要通过交互操作界面控制和管理计算机,使用程序接口较少。程序接口是程序员在编写程序时利用操作系统所提供功能的方法,可以在高级语言和汇编语言中使用。日前大多数软件使用高级语言开发,大多数功能可以通过高级语言的语句实现,不需要直接使用程序接口来完成。只有一些特殊功能才需要在高级语言中使用操作系统的程序接门。因此大多数用户使用的是操作系统的用户接口。
8.处理机为何要区分系统态和用户态,什么情况下实现两者的转换?
答:区分两种状态是为了保护操作系统程序。
发生中断时,会从用户态转入系统态,中断结束时,会从系统态转会用户态。
7. 操作系统中,什么是系统调用简述其实现过程。
【解答】系统调用是操作系统提供给软件开发人员的惟一接口,开发人员可利用它使用系统功能。os核心中都有一组实现系统功能的过程(子程序),系统调用是对上述过程的调用。因此,系统调用直观上像一个黑箱子,对用户屏蔽操作系统的具体动作而只提供有关的功能。
为了实现系统调用,系统设计人员还必须为实现各种系统调用功能的子程序编造入口地址表,每个入口地址都与相应的系统子程序名对应起来。然后,由陷阱处理程序把陷阱指令中所包含的功能号与该入口地址表中的有关项对应起来,从而有系统调用功能号驱动有关系统子程序执行。
由于在系统调用处理结束后,用户程序还需利用系统调用的返回结果继续执行,因此,在进入系统调用处理之前,陷阱处理机构还需保存处理机现场。再者,在系统调用处理结束之后,陷阱处理机构还要恢复处理机现场。在操作系统中,处理机的现场一般被保护在特定的内存区或寄存器中。系统调用的处理过程如图1-6所示。
8. 计算机操作系统 系统调用的目的是什么
A。操作系统编制了许多不同功能的子程序,供用户程序执行中调用。这些由操作系统提供的子程序称为系统功能调用,简称系统调用。系统调用是操作系统为用户程序提供的一种服务界面,或者说,是操作系统保证程序设计语言能正常工作的一种支持。
9. 计算机操作系统 系统调用的目的是什么
a。操作系统编制了许多不同功能的子程序,供用户程序执行中调用。这些由操作系统提供的子程序称为系统功能调用,简称系统调用。系统调用是操作系统为用户程序提供的一种服务界面,或者说,是操作系统保证程序设计语言能正常工作的一种支持。
10. 系统调用的目的是
bios
计算机用户在使用计算机的过程中,都会接触到BIOS,它在计算机系统中起着非常重要的作用。
BIOS是英文"Basic Input Output System"的缩略语,直译过来后中文名称就是"基本输入输出系统"。它的全称应该是ROM-BIOS,意思是只读存储器基本输入输出系统。其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机上电自检程序和系统启动自举程序。有人认为既然BIOS是"程序",那它就应该是属于软件,感觉就像自己常用的Word或Excel。但也很多人不这么认为,因为它与一般的软件还是有一些区别,而且它与硬件的联系也是相当地紧密。形象地说,BIOS应该是连接软件程序与硬件设备的一座"桥梁",负责解决硬件的即时要求。一块主板性能优越与否,很大程度上就取决于BIOS程序的管理功能是否合理、先进。主板上的BIOS芯片或许是主板上唯一贴有标签的芯片,一般它是一块32针的双列直插式的集成电路,上面印有"BIOS"字样。586以前的BIOS多为可重写EPROM芯片,上面的标签起着保护BIOS内容的作用(紫外线照射会使EPROM内容丢失),不能随便撕下。586以后的ROM BIOS多采用EEPROM(电可擦写只读ROM),通过跳线开关和系统配带的驱动程序盘,可以对EEPROM进行重写,方便地实现BIOS升级。常见的BIOS芯片有Award、AMI、Phoenix、MR等,在芯片上都能见到厂商的标记。
BIOS的主要作用有三点
1.自检及初始化:开机后BIOS最先被启动,然后它会对电脑的硬件设备进行完全彻底的检验和测试。如果发现问题,分两种情况处理:严重故障停机,不给出任何提示或信号;非严重故障则给出屏幕提示或声音报警信号,等待用户处理。如果未发现问题,则将硬件设置为备用状态,然后启动操作系统,把对电脑的控制权交给用户。
2.程序服务:BIOS直接与计算机的I/O(Input/Output,即输入/输出)设备打交道,通过特定的数据端口发出命令,传送或接收各种外部设备的数据,实现软件程序对硬件的直接操作。
3.设定中断:开机时,BIOS会告诉CPU各硬件设备的中断号,当用户发出使用某个设备的指令后,CPU就根据中断号使用相应的硬件完成工作,再根据中断号跳回原来的工作。
BIOS对整机性能的影响
从上面的描述可以看出:BIOS可以算是计算机启动和操作的基石,一块主板或者说一台计算机性能优越与否,从很大程度上取决于板上的BIOS管理功能是否先进。大家在使用Windows 95/98中常会碰到很多奇怪的问题,诸如安装一半死机或使用中经常死机;Windows 95/98只能工作在安全模式;声卡解压卡显示卡发生冲突;CD-ROM挂不上;不能正常运行一些在DOS、Windows 3.x下运行得很好的程序等等。事实上这些问题在很大程度上与BIOS设置密切相关。换句话说,你的BIOS根本无法识别某些新硬件或对现行操作系统的支持不够完善。在这种情况下,就只有重新设置BIOS或者对BIOS进行升级才能解决问题。另外,如果你想提高启动速度,也需要对BIOS进行一些调整才能达到目的,比如调整硬件启动顺序、减少启动时的检测项目等等。
BIOS和CMOS相同吗?
BIOS是一组设置硬件的电脑程序,保存在主板上的一块ROM芯片中。而CMOS通常读作C-mo-se(中文发音“瑟模室”),是电脑主板上的一块可读写的RAM芯片,用来保存当前系统的硬件配置情况和用户对某些参数的设定。CMOS芯片由主板上的充电电池供电,即使系统断电,参数也不会丢失。CMOS芯片只有保存数据的功能,而对CMOS中各项参数的修改要通过BIOS的设定程序来实现。
深入了解 BIOS
一、BIOS基本概念
BIOS(Basic Input / Output System)——基本输入输出系统,通常是固化在只读存储器(ROM)中,所以又称为ROM-BIOS。它直接对计算机系统中的输入输出设备进行设备级、硬件级的控制,是连接软件程序和硬件设备之间的枢纽。ROM-BIOS是计算机系统中用来提供最低级、最直接的硬件控制的程序。计算机技术发展到今天,出现了各种各样新技术,许多技术的软件部分是借助于BIOS来管理实现的。如PnP技术(Plug and Play—即插即用技术),就是在BIOS中加上PnP模块实现的。又如热插拔技术,也是由系统BIOS将热插拔信息传送给BIOS中的配置管理程序,并由该程序进行重新配置(如:中断、DMA通道等分配)。事实上热插拔技术也属于PnP技术。
二、BIOS的工作原理
讲到BIOS的工作原理,我们先来介绍一下BIOS系统的两类载体:EPROM和EEPROM的相关知识。EPROM——可擦除可编程只读存储器,从外观上可以看见,在芯片的中央有一个透明的小窗口,紫外线光即是通过这个小窗口将芯片上保存的信息擦除掉的,因为在日光和荧光中都含有紫外线,因此,我们通常用一块不透明的标签将已保存了信息的EPROM芯片的紫外线窗口封住。当然,写入EPROM芯片时,我们首先必须先用紫外线擦除器将EPROM中的信息清除掉,使它变为空的芯片后才能进行写操作,应该说明的是这里“空芯片”的“空”并非我们通常意义上的“空白”,而是此时芯片内部变为全“1”信息,因此,芯片的写入原理实际上是将指定位置上的“1”改为“0”。到这里,有的朋友一定想问:既然日光和荧光均含有紫外线,为什么我们不让EPROM芯片在这些光线下暴露一段时间来擦除呢?要知道,完全擦除一块EPROM中的内容,在日光下至少要一周,在室内荧光下至少要三年了!而且随着芯片容量的增大,时间也得相应拉长。EEPROM是电可擦除可编程只读存储器。在平常情况下,EEPROM与EPROM一样是只读的,需要写入时,在指定的引脚加上一个高电压即可写入或擦除,而且其擦除的速度极快!通常EEPROM芯片又分为串行EEPROM和并行EEPROM两种,串行EEPROM在读写时数据的输入/输出是通过2线、3线、4线或SPI总线等接口方式进行的,而并行EEPROM的数据输入/输出则是通过并行总线进行的。另外还有一种EEPROM即是我们现在主板上常见到的FLASH ROM——闪速存储器,其读写速度更快,更可靠,而且可以用单电压进行读写和编程,为便携式设备的在线操作提供了极大的便利,也因此广泛应用 扑慊靼迳稀?br> 通常,486以及486档次以下电脑的BIOS芯片基本上均是EPROM芯片,而586以及PⅡ、PⅢ档次的BIOS芯片基本上均是EEPROM。另外我们也可以从BIOS芯片上的型号来识别:像27C010、27C512等以“27”打头的芯片均是EPROM,而28C010、29C010、29C020、29C040等,均为EEPROM,其中28C010是128K×8,即1M比特并行EEPROM,29C010是128K×8(1M比特)、29C020是256K×8(2M比特)、29C040是512K×8(4M比特)的FLASH ROM。串行EEPROM在计算机主板上较少见,而提供这些芯片的厂家多为MX、WINBOND、ATMEL等厂家。应注意的是:不同厂家生产的芯片命名方式不同。以上介绍的芯片是以ATMEL公司的产品为例。
下面我们以当前最常见的AT29C020为例,介绍一下BIOS的工作原理和程序的烧录过程。
AT29C020是ATMEL公司生产的256K×8的FLASH ROM芯片,采用单5V供电,由于AT29C020的容量为256K×8,所以需要18根地址线来寻址,也即图中A0~A17,而其输出是8位并行输出,需要8位双向数据线,即图中D0~D7,另外图中还有几个用于控制芯片工作状态的引脚。“”引脚是控制芯片写入的使能端,“”引脚是控制芯片输出数据的使能端,这两个引脚控制芯片在选中后的工作状态,“”引脚为芯片的片选端。当处理器需要对该芯片进行读写操作时,首先必须选中该芯片,即在“”端送出低电平,然后,再根据是读指令还是写指令,而将相应的“”引脚或”引脚拉至低电平,同时处理器要通过A0~A17地址线送出待读取或写入芯片指定的存储单元的地址,AT29C020芯片就将该存储单元中的数据读出到数据线D0~D7上或者将数据线D0~D7上的数据写入到指定的存储单元中,从而就完成了一次读或写操作。
当上电后,计算机即从BIOS芯片中读取出指令代码进行系统硬件的自检(含BIOS程序完整性检验、RAM可读写性检验、进行CPU、DMA控制器等部件测试)。对PnP设备进行检测和确认,然后依次从各个PnP部件上读出相应部件正常工作所需的系统资源数据等配置信息。BIOS中的PnP模块试图建立不冲突的资源分配表,使得所有的部件都能正常地工作。配置完成之后,系统要将所有的配置数据即ESCD——Extended System Config Data写入BIOS中,这就是为什么我们在开机时看到主机启动进入Windows前出现一系列检测:配置内存、硬盘、光驱、声卡等,而后出现的“UPDATE ESCD..SUCCESSED”等提示信息。所有这些检测完成后,BIOS将系统控制权移交给系统的引导模块,由它完成操作系统的装入。
三、计算机主板中的BIOS技术
第一代BIOS技术通常见于586以及现在的大部分440LX、440BX、i810等芯片组的主板上,这些主板通常只有一块BIOS芯片,而且基本上均采用EEPROM芯片,因此在给予电脑爱好者提供便利的BIOS升级、提升主板性能、充分发挥主板潜力的大好机遇的同时,也给CIH之类的病毒造成了可乘之机。病毒通过程序指令给BIOS芯片加上编程电压,然后向BIOS芯片写入一大堆乱码,从而达到破坏主机引导、瘫痪系统之目的。1999年的4月26日,想必许多人至今还刻骨铭心。于是厂家集思广益迅速推出了第二代双BIOS技术,以技嘉科技推出的DUALBIOS技术最早也最为出名,其原理是在计算机主板上安排了两个BIOS芯片,一块为Master BIOS,另一块为Slave BIOS。两块BIOS中的内容完全一样,Slave BIOS只是提供简单的备份功能,每次系统启动,Slave BIOS就会主动检查Master BIOS的完整性,若发现主BIOS内容有损坏,立即用备份BIOS重写主BIOS,一旦重写失败,则直接从备份BIOS启动。微星公司的SAFEBIOS技术原理也一样,但其配备了一片容量为普通BIOS芯片容量两倍的4MB Flash ROM作为BIOS芯片,平均划分为两个独立的区域,并且这两个区域的BIOS均可启动系统。近来一些厂家又提出了更为先进实用的双BIOS技术,像承启科技提出TWIN BIOS技术,其与DUAL BIOS技术所不同的是,TWIN BIOS技术中两块BIOS可以按完全不同配置进行配置,两块BIOS芯片地位完全对等,无主从之分,可以在开机时通过键盘按键选择从哪一块BIOS芯片上启动,这样大大地提高了另一片BIOS芯片的利用率,又能在一台电脑上实现按不同系统环境进行不同系统配置的要求。如可实现中文Windows与英文/日文Windows共存等,而不需用System Conmand等软件来实现复杂的多重启动来引导,从而使双BIOS技术从单一的系统安全保护作用跃升为兼备独立配置系统硬件设备的强大功能。随着科技的发展,可以预见不久的将来BIOS芯片的容量将会越来越大,提供给我们设置和监视系统的功能也将越来越大,当然也会越来越方便。
BIOS的主要作用有三点
1.自检及初始化:开机后BIOS最先被启动,然后它会对电脑的硬件设备进行完全彻底的检验和测试。如果发现问题,分两种情况处理:严重故障停机,不给出任何提示或信号;非严重故障则给出屏幕提示或声音报警信号,等待用户处理。如果未发现问题,则将硬件设置为备用状态,然后启动操作系统,把对电脑的控制权交给用户。
2.程序服务:BIOS直接与计算机的I/O(Input/Output,即输入/输出)设备打交道,通过特定的数据端口发出命令,传送或接收各种外部设备的数据,实现软件程序对硬件的直接操作。
3.设定中断:开机时,BIOS会告诉CPU各硬件设备的中断号,当用户发出使用某个设备的指令后,CPU就根据中断号使用相应的硬件完成工作,再根据中断号跳回原来的工作。
BIOS对整机性能的影响
从上面的描述可以看出:BIOS可以算是计算机启动和操作的基石,一块主板或者说一台计算机性能优越与否,从很大程度上取决于板上的BIOS管理功能是否先进。大家在使用Windows 95/98中常会碰到很多奇怪的问题,诸如安装一半死机或使用中经常死机;Windows 95/98只能工作在安全模式;声卡解压卡显示卡发生冲突;CD-ROM挂不上;不能正常运行一些在DOS、Windows 3.x下运行得很好的程序等等。事实上这些问题在很大程度上与BIOS设置密切相关。换句话说,你的BIOS根本无法识别某些新硬件或对现行操作系统的支持不够完善。在这种情况下,就只有重新设置BIOS或者对BIOS进行升级才能解决问题。另外,如果你想提高启动速度,也需要对BIOS进行一些调整才能达到目的,比如调整硬件启动顺序、减少启动时的检测项目等等。
BIOS和CMOS相同吗?
BIOS是一组设置硬件的电脑程序,保存在主板上的一块ROM芯片中。而CMOS通常读作C-mo-se(中文发音“瑟模室”),是电脑主板上的一块可读写的RAM芯片,用来保存当前系统的硬件配置情况和用户对某些参数的设定。CMOS芯片由主板上的充电电池供电,即使系统断电,参数也不会丢失。CMOS芯片只有保存数据的功能,而对CMOS中各项参数的修改要通过BIOS的设定程序来实现。
CMOS是互补金属氧化物半导体的缩写。其本意是指制造大规模集成电路芯片用的一种技术或用这种技术制造出来的芯片。在这里通常是指微机主板上的一块可读写的RAM芯片。它存储了微机系统的实时钟信息和硬件配置信息等,共计128个字节。系统在加电引导机器时,要读取CMOS信息,用来初始化机器各个部件的状态。它靠系统电源和后备电池来供电,系统掉电后其信息不会丢失。 BIOS是基本输入输出系统的缩写,指集成在主板上的一个ROM芯片,其中保存了微机系统最重要的基本输入输出程序、系统开机自检程序等。它负责开机时,对系统各项硬件进行初始化设置和测试,以保证系统能够正常工作。 由于CMOS与BIOS都跟微机系统设置密切相关,所以才有CMOS设置和BIOS设置的说法。CMOS RAM是系统参数存放的地方,而BIOS中系统设置程序是完成参数设置的手段。因此,准确的说法应是通过BIOS设置程序对CMOS参数进行设置。而我们平常所说的CMOS设置和BIOS设置是其简化说法,也就在一定程度上造成了两个概念的混淆。
关于CMOS放电
常常听到计算机高手或者非高手说“口令忘啦?给CMOS放电吧。”,这到底是什么意思呢?
如果你在计算机中设置了进入口令,而你又碰巧忘记了这个口令,你将无法进入计算机。不过还好,口令是存储在CMOS中的,而CMOS必须有电才能保持其中的数据。所以,我们可以通过对CMOS 的放电操作使计算机“放弃”对口令的要求。具体操作如下:
打开机箱,找到主板上的电池,将其与主板的连接断开(就是取下电池喽),此时CMOS将因断电而失去内部储存的一切信息。再将电池接通,合上机箱开机,由于CMOS已是一片空白,它将不再要求你输入密码,此时进入BIOS设置程序,选择主菜单中的“LOAD BIOS DEFAULT”(装入BIOS缺省值)或“LOAD SETUP DEFAULT”(装入设置程序缺省值)即可,前者以最安全的方式启动计算机,后者能使你的计算机发挥出较高的性能。
什么是POST自检
接通微机的电源,系统将执行一个自我检查的例行程序。这是BIOS功能的一部分,通常称为POST——上电自检(Power On Self Test)。完整的POST自检包括对CPU、系统主板、基本的640KB内存、1MB以上的扩展内存、系统ROM BIOS的测试;CMOS中系统配置的校验;初始化视频控制器,测试视频内存、检验视频信号和同步信号,对CRT接口进行测试;对键盘、软驱、硬盘及CD-ROM子系统作检查;对并行口(打印机)和串行口(RS232)进行检查。自检中如发现有错误,将按两种情况处理:对于严重故障(致命性故障)则停机,此时由于各种初始化操作还没完成,不能给出任何提示或信号;对于非严重故障则给出提示或声音报警信号,等待用户处理。当自检完成后,系统转入BIOS的下一步骤:从A驱、C驱或CD-ROM以及网络服务器上寻找操作系统进行启动,然后将控制权交给操作系统。
BIOS,(Basic Input/output system)即基本输入/输出系统。它实际上是被固化到计算机中的一组程序,为计算机 提供最低级的、最直接的硬件控制。准确地说,BIOS是硬件与软件程序之间的一个“转换器”或者说是接口(虽然它本身也只是一个程序) ,负责解决硬件的即时需求,并按软件对硬件的操作要求具体执行。程序员可以通过对INT 5、INT 13等中断的访问直接调用BIOS中断例程。
BIOS是固化在主板上的ROM芯片,而系统设置程序,微机部件配置情况是则是放在一块可读写的CMOS RAM芯片中的,它保存着系统CPU、软硬盘驱动器、显示器、键盘等部件的信息,关机后,系统通过一块后备电池向CMOS供电以保持其中的信息。当微机接通电源后,系统将有一个对内部各个设备进行检查的过程,这是由一个通常称之为POST(Power On Self Test,上电自 检)的程序来完成的。这也是BIOS的一个功能。完整的POST自检将包括CPU、640K基本内存、1M以上的扩展内存、ROM、主板、 CMOS存贮器、串并口、显示卡、软硬盘子系统及键盘测试。自检中若发现问题,系统将给出提示信息或鸣笛警告。在完成POST自检后,ROM BIOS将按照系统CMOS设置中的启动顺序搜寻软硬盘驱动器及CDROM、网络服务器等有效的启动驱动器 ,读入操作系统引导记录,然后将系统控制权交给引导记录,由引导记录完成系统的启动。
目前市场上主要的BIOS有AMI BIOS和Award BIOS。586以前的BIOS多为可重写EPROM芯片,上面的标签起着保护BIOS内容的作用(紫外线照射会使EPROM内容丢失),不能随便撕下。 586以后的ROM BIOS多采用EEPROM(电可擦写只读ROM),通过跳线开关和系统配带的驱动程序盘,可以对EEPROM进行重写,方便地实现BIOS升级,这就是我们常说的BIOS升级。
CMOS,(是指互补金属氧化物半导体——一种大规模应用于集成电路芯片制造的原料)是微机主板上的一块可读写的RAM芯 片,用来保存当前系统的硬件配置和用户对某些参数的设定。CMOS可由主板的电池供电,即使系统掉电,信息也不会丢失。 CMOS RAM本身只是一块存储器,只有数据保存功能,而对CMOS中各项参数的设定要通过专门的程序。早期的CMOS设置程序驻留 在软盘上的(如IBM的PC/AT机型),使用很不方便。现在多数厂家将CMOS设置程序做到了BIOS芯片中,在开机时通过特定的按键 就可进入CMOS设置程序方便地对系统进行设置,因此CMOS设置又被叫做BIOS设置。 早期的CMOS是一块单独的芯片MC146818A(DIP封装),共有64个字节存放系统信息,见CMOS配置数据表。386以后的微机一般将 MC146818A芯片集成到其它的IC芯片中(如82C206,PQFP封装),最新的一些586主板上更是将CMOS与系统实时时钟和后备电池集 成到一块叫做DALLDA DS1287的芯片中。随着微机的发展、可设置参数的增多,现在的CMOS RAM一般都有128字节及至256字节 的容量。为保持兼容性,各BIOS厂商都将自己的BIOS中关于CMOS RAM的前64字节内容的设置统一与MC146818A的CMOS RAM格式 一致,而在扩展出来的部分加入自己的特殊设置,所以不同厂家的BIOS芯片一般不能互换,即使是能互换的,互换后也要对 CMOS信息重新设置以确保系统正常运行.
什么是BIOS
系统开机启动 BIOS,即微机的基本输入输出系统(Basic Input-Output System),是集成在主板上的一个ROM芯片,其中保存有微机系统 最重要的基本输入/输出程序、系统信息设置、开机上电自检程序和系统启动自举程序。在主板上可以看到BIOS ROM芯片, 请参见微机主板图。一块主板性能优越与否,很大程度上取决于板上的BIOS管理功能是否先进。
一、BIOS中断例程 即BIOS中断服务程序。它是微机系统软、硬件之间的一个可编程接口,用于程序软件功能与微机硬件实现的衍接。 DOS/Windows操作系统对软、硬盘、光驱与键盘、显示器等外围设备的管理即建立在系统BIOS的基础上。程序员也可以通过 对INT 5、INT 13等中断的访问直接调用BIOS中断例程。
二、BIOS系统设置程序 微机部件配置情况是放在一块可读写的CMOS RAM芯片中的,它保存着系统CPU、软硬盘驱动器、显示器、键盘等部件的信息。 关机后,系统通过一块后备电池向CMOS供电以保持其中的信息。如果CMOS中关于微机的配置信息不正确,会导致系统性能降 低、零部件不能识别,并由此引发一系统的软硬件故障。在BIOS ROM芯片中装有一个程序称为“系统设置程序”,就是用来 设置CMOS RAM中的参数的。这个程序一般在开机时按下一个或一组键即可进入,它提供了良好的界面供用户使用。这个设置 CMOS参数的过程,习惯上也称为“BIOS设置”。新购的微机或新增了部件的系统,都需进行BIOS设置。
三、POST上电自检 微机接通电源后,系统将有一个对内部各个设备进行检查的过程,这是由一个通常称之为POST(Power On Self Test,上电自 检)的程序来完成的。这也是BIOS的一个功能。完整的POST自检将包括CPU、640K基本内存、1M以上的扩展内存、ROM、主板、 CMOS存贮器、串并口、显示卡、软硬盘子系统及键盘测试。自检中若发现问题,系统将给出提示信息或鸣笛警告。
四、BIOS系统启动自举程序 在完成POST自检后,ROM BIOS将按照系统CMOS设置中的启动顺序搜寻软硬盘驱动器及CDROM、网络服务器等有效的启动驱动器 ,读入操作系统引导记录,然后将系统控制权交给引导记录,由引导记录完成系统的启动。