原以为第一章的内容并不会涉及,然而,出乎意料,依然会有,所以,只能从第一章开始复习了,因为,现在即使去做数据库课设也是没什么用的,效率并不高,还不如去做一些不得不做的事情--复习操作系统
Fn + -> 可以移动到一行的末尾,好用!!
1.计算机有两种运行模式:
内核态:操作系统
用户态:应用程序
2.操作系统的一个主要任务是:隐藏硬件, 呈现给程序良好,清晰,优雅,一致的抽象
3.将打印结果送到磁盘缓冲区的方法,操作系统可以把潜在的混乱有序化
4.多路复用:
时间
空间复用:在若干程序之间,分割内存
5.操作系统扩展了计算机指令集并管理计算机的 资源
6. 通用寄存器
程序计数器:保存了将要请取出的下一条指令的内存地址
堆栈指针:堆栈的顶端
程序状态字寄存器
7.为了从 操作系统中获得服务,用户程序必须使用系统调用以陷入内核并调用操作系统,trap 指令 把用户态切换成内核态,并启用操作系统 陷阱
8.线程的切换可以缩短到纳秒级
9.寄存器<高速缓存->主存->磁盘
10上下文切换->从一个程序切换到另一个程序
11.进程本质是正在执行的一个程序
12.进程基本是容纳运行一个程序锁需要所有信息的容器
13.与一个进程有关的所有信息,除了该进程自身地址空间的内容外,均存放在操作系统的进程表中
14.特殊文件:
块特殊文件
字符特殊文件
15.Unix的命令解释器
16.用户可将标准输出从定向到一个文件 date-File
17.虚拟内存使得程序可以在运行时动态地连接库,若不是必须在编译时链接
18.计算机系统的功能:
为用户提供抽象
管理计算机资源
19.任何CPU计算机一次只能执行一条指令
20.trap 指令后面跟随一个来自远处位置的指令,以及供以后使用的一个保存在栈中的返回地址
21.pid :进程id
fd是文件描述符
n是字节数
position是在文件中的偏移量
seconds:是流逝时间
22.使用PID就可以在两个进程之中得到哪一个是子进程,父进程
23.waitpid:等待子进程
24.execve(command ,parameter,0):执行命令的指令:三个参数:将要执行的文件名称,一个指向变量数组的指针,一个指向环境数组的指针
25.unix将存储空间分为:正文段,程序段,堆栈段。 数据向上生成,堆栈向下生长
26.Iseek可以改变该位置指针的值,有三个参数:文件描述符 ;文件位置 ;说明文件位置是相对于文件起始位置,还是当前位置,还是文件的结尾
27.mkdir rmdir分别用于创建和删除空目录
28每个文件都有唯一的编号:i 编号
29.link所做的只是利用某个文件的i编号,创建一个新目录项。
30.mount调用把可移动介质都集中到一个文件层次中
31.chdir;调用改变当前的工作目录
32.kill系统调用:供用户或用户进程发送信号用
33.主过程,服务过程,实用过程
34.共享库,动态链接库
35.为了实现可靠性——>将操作系统划分成小的,良好定义的模块
36.再生服务器:检查错误,自动取代