操作系统平台
32
操作系统的必要性(作用)
北 京 工 业 大 学 张 丽
• 操作系统的来历 • 计算机系统的层次结构 • 屏蔽硬件的利与弊
计 算 机 系 统 平 台
33
操作系统的来历
北 京 工 业 大 学 张 丽
• 无操作系统时代:操作员
– 直接操作硬件:开关 – 读卡机、打印机
计 算 机 系 统 平 台
• 监控程序时代
北 京 工 业 大 学 张 丽
• 用户程序调用系统调用时,操作系统使CPU的 状态转为核心态
– – – – 可以执行核心指令 系统调用中可以向CPU发布核心级指令 系统调用的代码由操作系统提供 系统调用结束,程序控制转回到用户程序,处理机 也转换为用户态
• 可以保护系统中的敏感资源
计 算 机 系 统 平 台
43
计算机系统层次结构
北 京 工 业 大 学 张 丽
• 硬件
计 算 机 系 统 平 台
• 操作系统
– 提供实际的计算功能 – 裸机 – 操作系统、系统软件的设计和开发者 – 负责管理计算机的硬件资源,如分配CPU、 内存、控制外设 – 终端用户,即非专业用户,程序员
44
计算机系统层次结构
北 京 工 业 大 学 张 丽
– 看得见、摸得着的实实在在的部分 – 如显示器、主机、硬盘 – 编制好的、给计算机的命令清单以及 计算机需要完成这些任务必需的一些 信息 – 如IE、QQ
3
计算机硬件
北 京 工 业 大 学 张 丽
• 完成运算的最终实体 • 计算机系统的物质基础 • 复杂、不易使用和控制
计 算 机 系 统 平 台
计 算 机 系 统 平 台
• 提高系统效率
– 管理资源
41
计算机系统的分化过程
北 京 工 业 大 学 张 丽
• 计算机系统越来越复杂,功能越来越强 大
– 以前不能完成的事情现在可以做到了 – 一个程序员不能驾驭计算机完成任务
• 任务复杂 • 很难有人能够精通计算机的全部知识
– 如写一个能够显示照片的软件
管理存储的信息
计 算 机 系 统 平 台
15
北 京 工 业 大 学 张 丽
显示系统状态
计 算 机 系 统 平 台
16
操作系统的配置
北 京 工 业 大 学 张 丽
• 个体工作环境的设置 • 平台整体环境的设置
计 算 机 系 统 平 台
17
个体工作环境的设置
北 京 工 业 大 学 张 丽
• 用户自己设置
19
平台整体环境设置
北 京 工 业 大 学 张 丽
• • • • • • • •
管理员来完成 增、删、改可进入系统的用户帐号 随系统启动的服务 安装和删除系统中可用的应用程序 增、删系统支持的硬件设备 主机的名字、主机所用的网络地址 通过命令设置环境变量 通过配置文件
– /etc/profile
20
• 终端用户通过操作系统的文本界面或者 图形界面操纵计算机 • 应用程序运行在操作系统平台之上
计 算 机 系 统 平 台
• 应用程序的设计和开发者使用操作系统 的程序员级接口实现应用程序对计算机 硬件的控制
31
北 京 工 业 大 学 张 丽
操作平台与用户及计算机 硬件的关系
计 算 机 系 统 平 台
– 常驻内存
• 操作系统时代
– 多道程序 – 提高效率
34
北 京 工 业 大 学 张 丽
计 算 机 系 统 平 台
35
北 京 工 业 大 学 张 丽
计 算 机 系 统 平 台
36
北 京 工 业 大 学 张 丽
计 算 机 系 统 平 台
37
操作系统的来历
北 京 工 业 大 学 张 丽
• 无操作系统时代:操作员
计 算 机 系 统 平 台
程序员使用的操作平台
北 京 工 业 大 学 张 丽
• • • •
程序员眼中的操作系统 平台的外观——界面/接口 平台的使用——基本功能 程序员与终端用户的不同
计 算 机 系 统 平 台
21
程序员界面/接口
北 京 工 业 大 学 张 丽
• 广义命令
计 算 机 系 统 平 台
计 算 机 系 统 平 台
hello脚本的内容
hello脚本的执行
12
操作系统基本功能
北 京 工 业 大 学 张 丽
• 运行应用程序 • 管理存储的信息 • 显示系统状态
计 算 机 系 统 平 台
13
运行应用程序
北 京 工 业 大 学 张 丽
计 算 机 系 统 平 台
14
北 京 工 业 大 学 张 丽
• 系统调用和系统函数 • 都可以被放在程序代码中 • 功能与操作系统的功能相对应
– 与函数形式一样
– 和一般机器指令相似
22
系统调用的特殊性
北 京 工 业 大 学 张 丽
• 与普通函数
– 形式上与普通函数相似 – 有本质区别
计 算 机 系 统 平 台
• 使程序能够运行核心级指令
23
系统调用的执行
• 工具软件
– 如编译程序、编辑程序等等,也称系 统软件 – 程序员
计 算 机 系 统 平 台
• 应用程序
– 终端用户,即非专业用户
45
计算机系统的层次结构
北 京 工 业 大 学 张 丽
• 不同的计算机用户接触不同层次的计算 机系统 • 终端用户使用应用软件和操作系统终端 用户接口 • 应用程序员接触应用软件开发平台以及 操作系统平台 • 系统软件设计和开发者接触操作系统以 及部分硬件 • 操作系统的设计和开发者需要了解计算 机硬件的全部细节
– 包含有与硬件和服务有关的信息,如某个服务启动成功或 者失败
– 日志都以明文形式存储
• 在程序中使用访问文件的系统调用直接读取这 些日志的内容 • 系统调用syslog可以向日志文件中填写新日志 内容
30
程序员与终端用户的不同
北 京 工 业 大 学 张 丽
• 操作平台与用户及计算机硬件的关系 • 操作系统工作在计算机硬件之上
操作系统平台概述
北京工业大学 张丽
1
主要内容
北 京 工 业 大 学 张 丽
• • • • •
引言 终端用户使用的操作平台 程序员使用的操作平台 操作系统的必要性 常见操作系统及其分类
计 算 机 系 统 平 台
2
计算机系统的构成
北 京 工 业 大 学 张 丽
• 硬件
• 软件
计 算 机 系 统 平 台
计 算 机 系 统 平 台
• 如设计三维动画模拟实验、播放电影
• 出现分工
– 任务被分解,由不同的程序/程序员完成
42
北 京 工 业 大 学 张 丽
计算机系统的层次结构
应用软件 应用软件开发平台 (集成开发环境、编译器、 编辑器、 操作系统平台 库) 硬件平台
计 算 机 系 统 平 台
• 下层的软件为上一层提供服务 • 上层的软件依靠下层的软件完成任务
– 直接操作硬件:开关 – 读卡机、打印机
计 算 机 系 统 平 台
• 监控程序时代
– 常驻内存
• 操作系统时代
– 多道程序 – 提高效率
38
什么是操作系统
北 京 工 业 大 学 张 丽
• • • • •
计 算 机 系 统 平 台
一个系统软件 管理和控制系统中的各种资源 协调系统中的各个组成部分 使系统能够高效运转 为用户提供方便操作计算机的手段
• 联机接口
– 命令行 – 图形界面
计 算 机 系 统 平 台
• 脱机控制接口
8
命令行
北 京 工 业 大 学 张 丽
计 算 机 系 统 平 台
9
图形界面
北 京 工 业 大 学 张 丽
计 算 机 系 统 平 台
10
脱机控制接口
北 京 工 业 大 学 张 丽
• 把需要操作系统做的事情列个清单, 让操作系统去做 • 脱机控制语言
28
计 算 机 系 统 平 台
文件访问
北 京 工 业 大 学 张 丽
• Linux中与文件相关的常用系统调用 • 例
– create、open、close、read、write、link、 mkdir、chdir – 以只读方式打开hello.c文件
• fd = open (“hello.c”, O_RDONLY);
计 算 机 系 统 平 台
• 在Linus领导下、由全世界的计算机 爱好者志愿设计和开发 • 采用不同于商用版权的GPL许可证
– Shell编程
计 算 机 系 统 平 台
11
Shell编程
北 京 工 业 大 学 张 丽
#!/bin/sh #对变量赋值: a="hello world" # 现在打印变量 a 的内容: echo "A is:" echo $a
[zl@zhanglivmware book]$ vi hello [zl@zhanglivmware book]$ chmod +x hello [zl@zhanglivmware book]$ ./hello A is : hello world [zl@zhanglivmware book]$
计 算 机 系 统 平 台
– 例:设置桌面背景、屏幕保护 – 例:设置环境变量 – 例:配置文件
• export PATH=$PATH:/home/mypath • Windows XP设置环境变量 • .bash_profile
18
北 京 工 业 大 学 张 丽
Windows XP设置环境变量