这是一套材料,是计算机考研专业课中的操作系统讲义。讲义很详细,很易懂,操作系统是比较好上分的一门课程,大家要好好准备,争取不丢分。对于知识点,要在详细中学重点,这样最有效。
第七章 操作系统结构和程序设计
7.1 操作系统的编程概念
1、 操作系统编程的发展
在九十年代以前,程序员的精力集中于完成任务的过程,而不
是用户与该过程的交互方式,过去评价一个软件的好坏往往是注意源
程序的短小精悍和执行的快速性。快速的、清晰的编程是许多程序员
努力要达到的理想境界。Windows操作系统将用户与计算机的交互方
式的设计(即人机界面设计)放到了非常重要的位置。同时,Windows
为不同形式的高层次交互提供了相应的机制:应用程序之间、操作系
统和应用程序之间、公共的共享代码库和数据库之间。
2、 编程语言简史
(1) 机器语言:以二进制代码“0”、“1”组成的机器指令集合;
(2) 汇编(Assembler)语言:以助记符表示机器指令功能,例如,
JOVIAL、forth;
(3) 高级语言:接近人类语言(英语)和数学语言的计算机语言,
例如,BASIC、FORTRAN、Pascal、C、FoxBASE、ORACLE等;
(4) 进程(Process)概念:例如,UNIX Shell、TCL、PERL和Marvel
等;
(5) 面向对象的语言:例如C++、Visual BASIC、java等;
(6) 新范例计算机语言:例如ML、Smalltalk、Eiffel等;
3、 不同应用领域的计算机语言
(1) 科学研究:
例如:FORTRAN、ALGOL、BASIC、APL、Pascal、C、C++、AUTOCAD等;
(2) 商业:
例如:COBOL、C、PL/I、4GLs、和spreadsheet等;
(3) 系统:
例如:Assembler、JOVIAL、Forth、C、C++、Ada、java等;
(4) 出版:
例如:TeX、Postscript、word、WPS、和processing等;
(5) 人工智能(AI,artificial intelligence):
例如:LISP、SNOBOL和Prolog等。
7.2 结构设计的目标
计算机操作系统一般都有两种运行状态,即用户态(user mode)
和核心态(kernel mode)。计算机操作系统的结构设计一般包括内结
构和外结构两种结构。传统操作系统内结构是指内部程序模块的层次
结构,每一层由若干数量不等的程序模块组成。例如,早期的UNIX
操作系统版本,如图7-1所示。