《信息安全系统设计基础》第六周学习总结

输入/输出(I/O) : 是指主存和外部设备(如磁盘,终端,网络)之间拷贝数据过程。
Unix I/O
所有I/O设备都被模型化为文件。
而所有的输入和输出都被当做相应文件的读和写。
设备优雅地映射成文件,允许Unix内核引出一个简单,低级的应用接口。叫做Unix I/O

使得所有的输入输出都能以一种统一且一致的方式来执行。

打开文件: 应用程序要求内核打开文件

内核返回一个小的非负整数,叫做描述符
头文件<unistd.h>定义了常量代替显式的描述符值
文件位置即是从文件开头起始的字节偏移量。
打开和关闭文件
进程是通过调用 open函数来打开一个已存在的文件或者创建一个新文件的
flags参数指明了进程打算如何访问这个文件:
可是以一个多个掩码的或。(拿二进制思想思考)
O_RDONLY: 只读
O_WRONLY: 只写
O_CREAT : 如果文件不存在,就创建一个截断的(truncated)(空)文件。
O_TRUNC : 如果文件已存在,就截断它(长度被截为0,属性不变)
O_APPEND: 在每次写操作前,设置文件位置到文件的结尾
O_RDWR: 可读可写
close函数关闭一个打开的文件
读和写文件
调用read和write完成输入输出
通过调用lseek函数,应用程序能够显示地修改当前文件的位置
内部缓冲约束和较长的网络延迟会引起read和write返回不足值。
RIO包: 全称 Robust I/O包,健壮的I/O包。会自动的处理上文中所述的不足值。
一个文本行就是由一个换行符结尾的ASCII码字符序列。
读取文件元数据
应用程序能够通过调用stat和fstate函数,检索到关于文件的信息(有时也称为文件的元数据(metadata))
文件类型
普通类型:就是我们一般所说的文件
目录文件:包含关于其他文件的信息
套接字: 是一种用来通过网络与其他进程通信的文件。
Unix提供的宏指令根据st_mode来确定文件类型。
共享文件
每个进程都有它独立的描述符表。
文件表:打开文件的集合是由一张文件表表示的。
引用计数(reference count):即当前指向该表项的描述符项数。
关闭一个描述符会减少相应文件表表项中的引用计数。
标准I/O
ANSI C定义了一组高级输入输出函数,称为标准I/O库。
这个库(libc)提供了
打开和关闭文件的函数(fopen和fclose)
读和写字节(fread和fwrite)
读和写字符串的函数(fgets和fputs)
以及复杂的格式化I/O函数 (scanf和printf)
标准I/O库将一个打开的文件模型化为一个流
Unix I/O。
RIO I/O
标准I/O
Unix对网络的抽象是一种叫做套接字的文件类型。
和任何Unix文件一样,套接字也是用文件描述符来引用的,称为套接字描述符。##### 错题
14
( 多选题 | 1 分)
有关磁盘操作,说法正确的是()
A
.
对磁盘扇区的访问时间包括三个部分中,传送时间最小。
B
.
磁盘以字节为单位读写数据
C
.
磁盘以扇区为单位读写数据
D
.
读写头总处于同一柱面
正确答案: A C D 你的答案: A C
查看知识点 | 收起解析

p409

20
( 多选题 | 1 分)
有关RAM的说法,正确的是()
A
.
SRAM和DRAM掉电后均无法保存里面的内容。
B
.
DRAM将一个bit存在一个双稳态的存储单元中
C
.
一般来说,SRAM比DRAM快
D
.
SRAM常用来作高速缓存
E
.
DRAM将每一个bit存储为对一个电容充电
F
.
SRAM需要不断刷新
G
.
DRAM被组织为二维数组而不是线性数组
正确答案: A C D E G 你的答案: A D E G
查看知识点 | 收起解析

p400

posted @ 2018-11-04 21:14  20165305  阅读(120)  评论(0编辑  收藏  举报