第2章 操作系统用户界面

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.4 Linux 和Windows的命令控制界 面2.4.2 Windows的命令控制界面
使用方式: (1)直接在命令行输入命令,如 systeminfo&mem 显示当前系统的属性、配置等,然后显示当前内存 使用情况。 新建exam1.bat (2)使用批处理

@echo off mkdir test echo hello pause

低档PC机
主机
公用存储器 低档PC机 直接耦合方式
2.2 一般用户的输入输出界面 2.2.3 一般用户的输入输出方式

4.SPOOLING系统 又可译为外围设备同时联机操作。 在SPOOLING系统中,多台外围设备通过通道或 DMA器件和主机与外存连接起来。 作业的输入输出过程由主机中的OS控制。OS中 的输入程序包含两个独立过程: 从外部设备把信息读入缓冲区; 写过程,负责把缓冲区的信息送到外存输入井中。 外围设备——各种终端、其他输入设备,如读卡 机等。
# vi file.c # gcc -o file file.c #vi infile (输入需复制的内存) # ./file


#ls
2.6 Linux 和Windows的系统调用 2.6.2Windows的系统调用



系统调用被进一步编写成不同的库函数后放入动 态链接库DLL中。 这些库函数构成了Windows操作系统提供给程序 员的编程界面。这个编程界面被称为应用编程接 口API。 常用的API函数调用分为5类: 窗口管理类 图形设备接口(GDI)类 系统服务类 国际特性类 网络服务类
2.4 Linux 和Windows的命令控制界面 2.4.1 Linux的命令控制界面
一个Shell程序由以下6部分组成 (1)命令或其他Shell程序 (2)位置参数 (3)变量及特殊字符 (4)表达式比较 (5)控制流语句 (6)函数

2.4 Linux 和Windows的命令控制界面 2.4.1 Linux的命令控制界面

mkdir:创建目录命令 cp:复制文件命令 echo:显示文字命令
$ file :是shell自定义变量 -ne :是shell表达式比较操作符
2.4 Linux 和Windows的命令控制界面 2.4.1 Linux的命令控制界面
例如:创建一个简单的shell程序 在Linux的命令控制符下使用Vi编辑器,创建一个shell程序 #vi ShowHello.sh
2.脱机输入输出方式 脱机输入方式又称为预输入方式。 在个人机上,用户通过联机方式把数据或 程序首先输入到后援存储器上,如U盘等; 然后将后援存储器拿到主机的高速外围设 备上和主机连接,在较短时间内完成作业 的输入工作。

2.2 一般用户的输入输出界面 2.2.3 一般用户的输入输出方式
3.直接耦合方式 把主机和外围机通过一个公用的大容量外 存直接耦合起来。

2.2 一般用户的输入输出界面 2.2.3 一般用户的输入输出方式
5.网络联机方式 以上述几种输入输出方式为基础。通过计 算机网络中某一台设备对计算机网络中另 一台主机进行输入输出操作时,就构成了 网络联机方式。

2.3 命令控制界面






OS为用户提供两个接口界面:命令接口界面、系 统调用 使用操作命令进行作业控制的主要方式:脱机方 式和联机方式。 联机控制方式命令分为: (1)环境设置 (2)执行权限设置 (3)系统管理 (4)文件管理 (5)编辑、编译、链接装配和执行编辑命令 (6)通信 (7)资源要求
本章小结
简要介绍了OS的用户界面。 OS的用户界面包括命令控制界面和编程界 面。 系统调用是OS提供给编程人员的唯一接口。 简要介绍了Linux 和Windows系统的用户界 面。
概念
需求分析 功能 设计 修改
输出
结构 设计
详细 设计
编辑 设计
建档
执行 一般编程过程
链接
编译
调试



在一次应用业务处理过程中,从输入开始到输出结束, 用户要求计算机所做的有关该次业务处理的全部工作称为 一个作业。 作业步一个作业处理过程中计算机所做的相对独立的工作 作业由程序、数据和作业说明书组成
2.4 Linux 和Windows的命令控制界面 2.4.2 Windows的命令控制界面






Windows的命令控制界面分为两大部分:命令解 释部分和窗口交换部分。 cmd.exe:提供命令行控制界面 主要分为以下4类: (1)系统信息命令,如 time,date,mem,driverquery,systemInfo等 (2)系统操作命令,如shutdown,runas,taskkill 等 (3)文件系统命令,如copy,del,mkdir等 (4)网络通信命令,如ping,netstat,router等
2.5 系统调用
系统调用是OS提供给编程人员的唯一接口。 系统调用大致分为6类: (1)设备管理 (2)文件管理 (3)进程控制 (4)进程通信 (5)存储管理 (6)线程管理

2.6 Linux 和Windows的系统调用 2.6.1 Linux的系统调用

每个系统调用由两部分组成:核心函数、接口函 数。 从功能上大致分为6类: 设备管理的系统调用 文件系统操作的系统调用 进程控制的系统调用 存储管理的系统调用 管理用的系统调用 通信的系统调用
2.2 一般用户的输入输出界面 2.2.3 一般用户的输入输出方式
通道:是一个独立于CPU的专管输入输出 的处理机,它控制外设或外存与内存之间 的信息交换。 DMA方式:与通道方式相似。不同的是在 DMA方式中,信息的传送方向、信息传送 的源地址和目的地址以及传送长度等都是 由CPU控制,而不是由DMA器件控制。






Linux命令主要包括 (1)系统维护及管理命令,如date,setenv (2)文件操作及管理命令,如ls,find (3)进程管理命令,如kill,at (4)磁盘及设备管理命令,如df,du,mount (5)用户管理命令,如adduser,userdel (6)文档操作命令,如csplit,sort (7)网络通信命令,如netstat,ifconfig (8)程序开发命令,如cc,link (9)X Window管理命令,如startx,XE86Setup




2.6 Linux 和Windows的系统调用 2.6.1 Linux的系统调用
例如,使用系统调用打开(open),读 (read),写(write),关闭(close)等 完成文件复制。 源程序:file.c

#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #define BUF_SIZE 1024*8

运行结果:
#!/bin/sh #ShowHello.sh # To show hello to somebody echo -n "Enter Your Name:" read NAME echo "Hello,$NAME!“
使用#chmod u+x ShowHello.sh,修改文件属性(可执行文件) 运行shell程序#./ShowHello.sh

批处理文件之间可以相互调用和传递函数。
新建exam3.bat: @echo off type %1\*.txt echo type ok!
新建exam2.bat: @echo off mem>%1/meminfo.txt echo generate memoryinfo ok! 改写exam1.bat: @echo off mkdir test call exam2.bat call exam3.bat echo call ok! pause
例如:把目录中每个文件在一个子目录中建立备份的Shell 程序。 mkdir backup 在当前目录下创建一个子目录backup for filein „ls‟ 循环地建立当前目录下所有文件的备份 do cp $ file backup/ $ file if[ $ >-ne 0] then echo “copying $ file error” fi done
2.2 一般用户的输入输出界面 用户名 2.2.2 作业组织 作业名
作业说明书主要包 含三方面内容:作 业的基本描述、作 业控制描述和资源 要求描述。 作业说明书在系统 中生成作业控制块 (JCB)的表格。

作业基本情况描述
使用语言名 允许最大处理时间 等等 控制方式 操作顺序 出错处理 等等 要求处理时间 内存时间 外设类型和数量 库函数或实用程序 等等
2.4 Linux 和Windows的命令控制界面 2.4.1 Linux的命令控制界面
Linux最大特点:源代码的免费和开放。 Linux的命令控制是用图形化的窗口系统以 及Shell程序进行的。 Linux的图形化窗口系统:X Window

2.4 Linux 和Windows的命令控制界面 2.4.1 Linux的命令控制界面
循环向缓冲区读入 输入文件内存
将缓冲区读入的内存写 到输出文件中去 关闭输入文件 和输出文件
以只读 int main() 模式打 以读写 { 开输入 模式新 int In_fh,Out_fh; 文件 建一个 char buf[BUF_SIZE]; 文件 size_t hasread = 0; In_fh = open("infile", O_RDONLY); printf("Opening infile\n"); Out_fh = open("outfile", O_WRONLY|O_CREAT|O_TRUNC); printf("Opening outfile\n"); if(In_fh && Out_fh) { while((hasread = read(In_fh, buf, sizeof(buf))) > 0) write(Out_fh, buf, hasread); printf("Writing date\n"); close(In_fh); close(Out_fh);.2 Windows的命令控制界面
不用命令可以进行组合形成新命令: Command1&Command2 Command1&&Command2 Command1|| Command2 (Command1& Command2) Command1 patameter1;parameter2
第2章 操作系统用户界面

本章主要从用户使用和系统管理两方面出 发,讨论OS为用户提供的编程接口和命令 控制接口。
2.1 简介
什么是用户界面? 计算机系统的用户有两类: 使用和管理计算机应用程序的用户(普通 用户和管理员) 程序开发人员 操作系统为普通用户、管理员用户及编程 人员提供不同的用户界面。

2.1 简介
操作系统的操作命令界面作为命令控制界 面。 操作系统为编程人员提供的界面是系统调 用。系统调用是OS为编程人员提供的唯一 界面。 OS为普通用户和管理员提供的界面是一组 不同操作命令组成的集合,对编程人员提 供的是一组系统调用集合。

2.2 一般用户的输入输出界面 2.2.1 作业的定义
作业控制描述
作业资源要求描述
作业说明书的主要内容
2.2 一般用户的输入输出界面 2.2.3 一般用户的输入输出方式
1.联机输入输出方式 联机输入方式用在交互式系统中,用户和系 统通过交互会话来输入输出作业。 一台主机和一台或多台外围设备(键盘、鼠 标、显示器、打印机等)连接。

2.2 一般用户的输入输出界面 2.2.3 一般用户的输入输出方式
相关文档
最新文档