文章目录
1 进程是什么
进程是计算机程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。(活动和单位)
进程具有并发性,独立性,共享性,结构性,动态性,制约性六个特点。(并独共结动制)
进程映象:控制块,程序块,核心栈,数据块(控成合数)
2 进程表是什么?
进程表示存储进程状态信息的数据结构
进程表是进程存在的唯一标识,是操作系统用来记录和刻画进程状态以及环境信息的数据结构,也是操作系统掌握进程和管理进程的主要依据。(标识,刻画状态,环境信息的结构,掌握和管理的依据)
3 进程栈是什么
进程运行时自身的堆栈
4 当寄存器的数值被保存到进程表内,esp应该指向何处来避免破坏进程表的值
进程运行的时候,esp指向进程堆栈的某个位置。寄存器的数值刚刚被保存到进程表内,esp是指向进程表中的某个位置的。如果接下来进行任何的堆栈操作,都会破坏掉进程表的数值。
为了解决这个问题,我们使用内核栈,让esp指向内核栈。
5 tty是什么
在unix系统中,一般有
tty=termina=文本的输入和输出
console=物理终端
shell=命令行解释器
(终端,字符型设备,代替)
teletype的缩写。终端是一种字符型的设备,它有多重的类型,通常使用tty来简化各种类型的终端设备
不同的tty对应的输入设备是同一个键盘
6 不同的tty为什么输入输出不同的画面在同一个显示器中
不同的tty各有一个console,各个console公用同一块显存
虽然不同的tty对应的输入设备是同一个键盘,但是输出是在不同的显示器中console中,也就是物理终端,但是我们使用的是同一个显示器,画面的不同只是因为现实了显存的不同位置而已
7 解释tty任务执行过程
从tty任务中执行一个循环,这个循环将轮询每一个tty,处理它的事件,包括从键盘缓冲区读取数据,显示字符等内容。(循环,轮询,输入,输出)
轮序到每一个tty的时候:
处理输入:查看其是否是当前的tty。只有当某个tty对应的控制台是当前控制台的时候,它才可以读取键盘缓冲区。(验证,读取)
处理输出:如果有要显示的内容则显示它。(显示)
8 tty结构体中大致包含哪些内容
(缓冲器,head,tail,大小,终端地址)
- tty输入缓冲区
- 指向缓冲区的下一个空闲位置
- 指向键盘任务应处理的键值
- 缓冲区中已经填充的数量
- console 的地址
9 console结构体中有哪些内容
(当前位置,起始,长度,光标)
- 当前显示到什么位置
- 当前控制台对应的显存位置
- 控制台的显存大小
- 光标的位置
指向键盘任务应该处理的键值