CONTENT

操作系统提供的基本服务

操作系统的程序

Linker and Loader

为什么应用程序只能在特定的操作系统运行

操作系统的设计问题

操作系统的结构


1.操作系统和用户的接口

  • Command intherface 命令借口 (User interface)

Command-Line Interface(CLI)命令行用户接口,文本界面

Graphics User Interface (GUI)图形用户接口 鼠标命令

Touch-Screen Interface 触摸屏接口

Choice of Interface 语音接口

Program interface 程序接口,system call

 

  • Program interface /System call 系统调用/程序接口

MEMO: What is System call ?

In computing, a system call is the programmatic way in which a computer program requests a service from the kernel of the operating system it is executed on.(WIKI)

操作系统提供的程序接口 The programming interface to the service provided by the OS

  • between processes and the kernel of the OS.
  • 一般使用高级语言设计,如C、C++ 

MEMO:why use APIs rather than system calls?

库函数和系统调用存在区别。

MEMO:动态链接

动态链接是指编译系统在链接阶段并不把目标文件和函数库文件链接在一起,而是等到程序在运行过程中需要使用时才链接函数库。

 

MEMO:静态连接 

静态链接是指在编写应用程序时,如果需要调用运行函数库中已有的函数,程序员无须在自己的源代码中重写函数库中的函数,而只是给出函数名和所需要的参数,就可以执行相应的操作。

静态连接的缺点是文件会很大。

2.操作系统的程序System Services

3.Linker and Loader

MEMO:gcc

 4.为什么应用程序只能在特定的操作系统运行

  • 不同的操作系统有自己独特的系统调用、文件格式等。
  • 多系统运行的方式:
    1. interpreted language Python、Ruby
    2. 虚拟机运行语言 JAVA 
    3.  用基础语言(eg:C)在每个操作系统上单独编译

5.操作系统的设计问题

  • 操作系统的设计特征:
    • 复杂程度高
    • 研制周期长
    • 正确性难以保证
  • 解决途径:
    • 良好的操作系统结构
    • 先进的开发方法和工程化的管理方法(软件工程)
    • 先进的开发工具 

Policy策略(相当于用户需求)需求很重要

Mechanism机制

  • 语言实现
    • 汇编语言(跟硬件有关的只能用汇编Lowest levels)
    • 系统语言 Algol、PL/1
    • C(效率高)、C++(面向对象太占资源,不适合操作系统)
    • 用多语言共同实现,主干是C实现。
    •  Scripting language PERL,Python

6.操作系统结构

  1. 简单结构 Simple Structure 
  2. 层次结构 Layered Operation Structur (不能越级访问)
  3. 单/宏内核结构 Monolithic Structure (内核全部打包、包括所有的子系统如内存管理、设备驱动)

eg: LINUX OS360

优点:共享文件很方便,读写效率高

缺点: 太大了,很容易出bug,很难扩展和修改,可能会导致源代码中出现复杂的嵌套

4.微内核结构 Microkernel Ststem Structure 

eg: WINDOWS NT4.0开始、MacOS

优点:易扩展,更容易将操作系统移植到新架构,更安全,更可靠

缺点:效率低

5.混合系统 Hybrid System

eg:Android、IOS、MacOS

6.虚拟机 Virtual Machine

OpenStack云计算平台

7.模块 Module 

  • 使用面向对象的方法
  • 每个核心组件都是独立的
  • 每个通过已知接口与其他人交谈
  • 每个内核都可以根据需要加载

1、单处理机(CPU)系统中,可并行的是:处理机与设备、处理机与通道(硬件)、设备与设备、进程与进程
2、中断处理一定会保存而子程序调用不需要保存其内容的是:程序状态字寄存器
程序计数器:pc program计数器,记录程序运行到哪一步的地址。
通用数据寄存器:通用寄存器可用于传送和暂存数据,也可参与算术逻辑运算,并保存运算结果。
通用地址寄存器 :通用寄存器地址通常是指CPU用来查找通用寄存器在计算机所在的位置的地址。
程序状态字寄存器:程序状态寄存器PSW是计算机系统的核心部件——运算器的一部分,PSW用来存放两类信息:一类是体现当前指令执行结果的各种状态信息,如有无进位(CY位),有无溢出(OV位),结果正负(SF位),结果是否为零(ZF位),奇偶标志位(P位)等;另一类是存放控制信息,如允许中断(IF位),跟踪标志(TF位)等。有些机器中将PSW称为标志寄存器FR(Flag Register)。

 


2014 线
操作系统双重模式和中断机制和定时器概念
操作系统概念教材第7版课后练习答案
112316_浙江大学2005–2006学年秋季学期_操作系统原理_课程试卷及答案
操作系统一二章作业答案

 


总访问量  3

今日访问  0


0 条评论

发表评论

Avatar placeholder