大题只说坑点,建议自己先做做:
OFFSET占8位,用补码表示,表示范围:-128~127。执行转移时,会先(PC+1),所以向后(反向)跳转1-128=-127条。
转移指令的目标地址的范围:
这里说的转移指令的范围不是某条指令的范围,而是所有转移指令的范围。
某条转移指令:(PC)-2^15~(PC)+
转移指令的目标地址的范围的分析:
主存地址为16位,故(PC)为16位无符号数,可表示范围为0~
;
计算机字长为16位,相对偏移量用补码表示,故(Rn)为16位的补码,可表示范围为-2^15~
题目中转移目标地址=(PC)+(Rn) 将两者范围相加:-2^15~
+
但是地址范围肯定是在主存地址空间能表示的范围内的,而主存地址能表示的范围是0~
,所以两者取交集,得到转移目标地址范围是0~
。
2010年统考:
这里的CSCAN其实是王道书里面的CLOOK算法,即磁头移动的方向上已经没有磁道访问请求了,就可以立即让磁头返回,并且磁头只需要返回到有磁道访问请求的位置。
移动的方向100--->120--->30--->50--->90
操作系统(16)----磁盘相关_磁盘的柱面和盘面-优快云博客
所以考试的时候CSCAN就是CLOOK,SCAN就是LOOK
2009年统考:
针对(2),不要默认子网1分配给局域网1,子网2分配给局域网2。
AS3的TTL设置:
AS3规模较小,自治系统内任意两个主机间通信,经过路由器数不超过15个,所以TTL设置16比较合适。IP数据报每经过一个路由器,它的值就减1。当此值为0时,该数据报就会被丢弃,同时发送ICMP报文通知源主机。TTL的初始值是由发送该数据报的源主机设置的,不同操作系统TTL的初始值可能不同,如 Windows的T的初始值是128,而Linux的TTL初始值大多为 64。
答案:B
这里传递的数据量大小是8*8B=64B,而且只花费了4个时钟周期就传输完了数据:
所以这里的最大数据传输率:
如果题目改为平均数据传输率:
应注意的点:
① 忽略其他各种时延,只计internet上各服务器往返时延
② 首先要建立TCP连接(TCP握手的前两次连接),才能进行资源访问。
这道题,我的试卷上的解释是错误的。
最少情况是0,没错。但是最多的解释就错了。顶级域名服务器和根域名服务器都只有一个,但是权限域名服务器可以有多个。如上图所示,访问两个权限域名服务器,最后一个权限域名服务器返回对应的IP地址。
对于这题,解释一下:
并不是说所有进程都共用一个页目录表,然后在其中查找对应的页表。每个进程都有自己独立的页目录表。通过为每个进程分配独立的页目录表,操作系统可以确保进程之间的内存访问是隔离的。这样,就实现了每个进程都拥有一个独立的虚拟地址空间。页目录表用来存储该进程中各个页表的起始物理地址。
而线程之间是共享进程的虚拟地址空间,所以PDBR内容不会变。
下面这题考的也是页目录表和页表的关系:
直接看第(2)问:
页目录表中的目录项记录的是进程每张页表的物理起始地址,页目录占10位,总共有2^10个页目录项,每个页目录项对应一张页表,而一张页表又对应2^10个页表项,所以页表项数目为:
2^10*2^10=2^20,所以:
当然也有另一种更简单的方法:
虚拟空间大小:2^32,页大小:2^12,所以总共2^32/2^12=2^20个页。
对于第(2)问的图像文件大小=5600B,占两个簇的大小,按两个簇大小算:
补充:
理一下:
一个文件对应一个索引节点,索引节点中有直接地址项,1级,2级,3级地址项,1级地址项对应一级索引表。
409612号块,对应的是第409613个盘块,每个盘块在位图中占1bit,所以409613/8=51201B,又因为每个盘块占1024字节,所以51201/1024=50.....余1。
所以这个盘块号在32号块开始的第51个盘块中,32+51-1=82。
又因为余1B,所以块内字节序号为1。
字长为32位,按指令字边界存放,所以主存空间可以存放2^30条指令(4GB/4B)
指令寄存器的位数等于指令字长度=32位。
答案:B
A.需要在磁盘(外存)上开辟出两个存储区(输入井和输出井)
B.需要用输入进程和输出进程来模拟脱机输入/输出时的外围控制机。这两个进程必然是要与执行I/O操作的进程并发执行的,当然也需要多道程序技术支持
C.SPO0Ling技术实现了将独占设备改造成共享设备可让多个作业共享一台独占设备
D.设备与输入/输出井之间的数据传送由系统控制。
查缺补漏----SPooling系统工作流程_spooling技术流程-优快云博客
R3向R2通告了一次新的距离向量,此时R2将到Internet的距离更新为不可达,而R1到Internet的距离为2,并且R1向R2发送了Rip更新报文,此时R2更新到达网络的距离为3。
这里的(2)我认为还是有歧义的,因为在(3)中有强调"从发送第1个数据段"开始,而这题没有:
如果是从连接建立开始,也就是对我握手的确认算1次,那么接收方通告的窗口为13KB,拥塞窗口=发送窗口=8KB。
如果是从发送第1个数据段开始,那么:接收方通告的窗口为12KB,拥塞窗口=发送窗口=9KB。
这里要区分FTP连接:
FTP首先需要建立控制连接,再建立数据连接:
题目所说的从请求建立数据连接开始,即从三次握手开始。
补充FTP数据连接有两种方式,1是主动连接,2是被动连接,主动被动都是相对于服务器而言的:
•主动方式
当客户进程向服务器进程发送建立连接的请求时,会寻找服务器控制进程端口,即21号端口,并且会告诉服务器自己这一进程的端口号,用于建立数据连接。接着服务器会用自己传送数据的端口(20号端口),与客户刚刚提供的端口号建立数据传送连接,接着就可以进行数据传输了。
“主动”是因为建立连接后,服务器端会告诉客户端自己数据传送的端口是多少(20号端口),以此与客户端之间建立连接。
•被动方式
当客户进程向服务器进程发送建立连接的请求时,会寻找服务器控制进程端口,即21号端口,接下来客户端会向服务器端发送一个命令,询问服务器端用于数据传输的端口号。服务器端就会返回给客户端一个大于1024的端口,作为被动方式下数据连接的端口号。接下来只需要等待客户端建立数据传输的连接并且发送数据了。
“被动”是因为服务器总是被动接收客户端的数据连接。
主存最多读写32位数据可知,DRAM芯片采用的是低位交叉编址中的同时启动方式:
地位交叉编址,由于有4个芯片,低两位表示体号,其他高位表示体内地址,所以其他高位是完全相同的。
804 001AH,低2位是10,所以从芯片3开始,读取一个double型变量(8B)。占3行,需要存储周期为3。
不清楚同时启动,轮流启动细节的,看看:查缺补漏----关于CPU响应DMA请求(总线周期,存取周期,指令周期,机器周期)-优快云博客
由于3地址指令为29条,所以操作码至少为5位(2^5=32),若操作码为5位,则32-29=3位,留了3个地址给2地址指令,2^6*3=192条>107条,也可以容纳下题目中的2地址指令,所以操作码=5位,总共5+3*6=23位。
按字节编址,所以字长要是字节整数倍,所以字长为24位。
这里提醒最后一问,P状态的变化:执行-->阻塞-->就绪-->运行
这题容易写多余的互斥信号量:如果是一读一写或两个都是写,那么才是互斥关系。
由于采用了转发旁路技术,所以对于普通的数据冒险可以不用阻塞,但是对于load_use指令是不起作用的。Jump指令会引发控制冒险,所以答案:C
不清楚的可以看看:
这里不支持突发传送,所以送1次64位数据的流程就是送地址--->读出--->传送:
32B,需要送4次数据:4*(1ns+1ns+6ns)=32ns
补充:如果该题改为流水线方式传送,依旧不支持突发传送:
则时间就为:8+3*1=11ns
阻塞进程、执行 CPU调度,唤醒进程都涉及到安全问题,所以必须要在内核态执行,执行前、执行时、执行后都是内核态。
而系统调用则是处于用户态的进程想要申请做一些超出他权限的事情,所以执行前是用户态,执行时是内核态,执行后是用户态。执行前、执行时、执行后都是内核态的原因
执行前:需要在内核态进行参数检查和权限验证等准备工作。例如,在执行 CPU 调度之前,内核需要检查当前是否是安全的调度时机(如当前中断是否处理完毕等),以及请求调度的进程是否有相应的权限(如是否是合法的系统调用触发的调度请求)。这些检查工作必须在内核态完成,以防止用户态程序绕过安全检查机制。
执行时:实际的操作(如修改进程状态、更新就绪队列、修改寄存器值等)本身就需要内核态的权限来访问和修改系统的关键资源和数据结构。这些操作直接影响系统的稳定性和进程
的正确执行,所以执行过程必须在内核态。
执行后:内核需要清理现场,如更新系统状态记录、检查是否有其他相关的进程需要被触发(如因为当前进程状态改变而可能需要唤醒其他等待的进程)等。这些后续工作也需要在内核态完成,以确保系统的一致性和安全性。例如,在唤醒一个进程后,内核可能需要重新评估当前就绪队列的状态,以确定是否需要立即进行下一轮的 CPU 调度,这些操作都依赖于内核态的权限和安全机制。
这里的(2),算下来是1.5次缺页,缺页次数应该是整数才对,但这里说的是平均,所以还是写1.5次缺页。
由于题目只说了采用滑动窗口协议,所以可能使用的是SR或GBN:
取两者交集,