笔记|2016.8.14 牛客网 操作系统、 网络基础、编译和体系结构 30题总结

1、管态和目态,即系统态和用户态,都有明确分工
【笔记|2016.8.14 牛客网 操作系统、 网络基础、编译和体系结构 30题总结】2、进程的模式有系统态和用户态两种,一般用户编写的程序是在用户态下工作,当程序中有中断或者调用系统函数时,会切换到系统态下运行

3、某进程在运行过程中需要等待从磁盘上读入数据,此时该进程的状态将?从运行变为阻塞


3、ulimit用于shell启动进程所占用的资源.-c size:设置core文件的最大值.单位:blocks
5、Ping是Windows下的一个命令,在Unix和Linux下也有这个命令。ping也属于一个通信协议,是TCP/IP协议的一部分。利用“ping”命令可以检查网络是否连通,可以很好地帮助我们分析和判定网络故障。应用格式:Ping空格IP地址。该命令还可以加许多参数使用,具体是键入Ping按回车即可看到详细说明。
Ping实际上利用的就是ICMP ECHO和ICMP ECHO REPLY包来探测主机是否存在,所以Ping程序的流程十分简单:发送ICMPECHO包---- > 接收ICMPECHO REPLY包
发送ICMP ECHO包时填充Identifier为进程ID, Sequence Number为从0递增计数,data填充为发送时间
接收ICMP ECHO REPLY包时检查Identifier, Sequence Number是否正确,通过IP报头的源地址字段获得回送报文的主机地址是否正确

6、计算机网络拓扑结构是指网络中各个站点相互连接的形式,各个站点抽象来说都是网络资源。
计算机网络的最主要的拓扑结构有总线型拓扑、环型拓扑、树型拓扑、星型拓扑、混合型拓扑以及网状拓扑。其中环形拓扑、星形拓扑、总线拓扑是三个最基本的拓扑结构。在局域网中,使用最多的是星型结构。

7、内部网关协议IGP(Interior Gateway Protocol)是指在一个自治系统(AS)内部所使用的一种路由协议。
内部网关协议可分为三类:
1)距离-矢量路由协议,包括路由信息协议(RIP),内部网关路由协议(IGRP)
2)连接状态路由协议,包括开放式最短路径优先协议(OSPF),中间系统到中间系统路由交换协议(IS-IS)
3)高级距离矢量路由协议,包括增强型内部网关路由协议(EIGRP)

8、TCP负责将信息拆分为数据包,并在数据包达到目的地后对其进行装配

IP负责为数据包选择路由以使将其传递到正确的目的地

IP、ICMP和IGMP都是网络层的协议


9、依据规模和所跨地域的大小,计算机网络可以划分为局域网、城域网和广域网。局域网的规模相对较小,通信线路短,覆盖地域的直径一般为几百米至几千米。城域网是指覆盖一个城市范围的计算机网络,广域网则是指更大范围的网络,覆盖一个国家,甚至整个地球。虽然局域网、城域网和广域网这些词是着眼于网络覆盖范围提出的,但它们更多的是从网络组建技术上被区分。一般认为,用局域网技术组建的是局域网,用广域网技术组建的是广域网,用城域网技术组建的自然是城域网。但城域网技术很少被单独提到。三种技术的主要差别在于所用通信线路和通信协议的不同。

10、IP地址类型
最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。IP地址根据网络ID的不同分为5种类型,A类地址、B类地址、C类地址、D类地址和E类地址。
1. A类IP地址
一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围从1.0.0.0 到126.0.0.0。可用的A类网络有126个,每个网络能容纳1亿多个主机。
2. B类IP地址
一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从128.0.0.0到191.255.255.255。可用的B类网络有16382个,每个网络能容纳6万多个主机。
3. C类IP地址
一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”。范围从192.0.0.0到223.255.255.255。C类网络可达209万余个,每个网络能容纳254个主机。
4. D类地址用于多点广播(Multicast)。
D类IP地址第一个字节以“lll0”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。
5. E类IP地址
以“llll0”开始,为将来使用保留。

11、+ 覆盖技术的实现是把程序划分为若干个功能上相对独立的程序段,按照其自身的逻辑结构使那些不会同时运行的程序段共享同一块内存区域。程序段先保存在磁盘上,当有关程序的前一部分执行结束后,把后续程序段调入内存,覆盖前面的程序段。
+ 交换技术:在分时系统中,用户的进程比内存能容纳的数量更多,系统将那些不再运行的进程或某一部分调出内存,暂时放在外存上的一个后备存储区,通常称为交换区,当需要运行这些进程时,再将它们装入内存

12、如果系统只有用户态线程,则线程对操作系统是不可见的,操作系统只能调度进程;
如果系统中有内核态线程,则操作系统可以按线程进行调度;


13、先来先服务调度算法
进程名到达时间 服务时间开始执行时间完成时间周转时间
A03033
B26397
C449139
D65131812
E82182012
周转时间 = 完成时间 - 到达时间
平均周转时间 = 所有进程周转时间 / 进程数 = (3+7+9+12+12)/ 5 = 8.6


14、MPLS(MultiprotocolLabel Switching,多协议标记交换. ) VPN
是在网络路由和交换设备上应用MPLS技术.采用路由隔离、地址隔离等多种手段提供了抗攻击和标记欺骗的手段,在MPLS VPN传递数据,只是标记了端点路由,对数据本身并不提供加密的防护手段。因此MPLS VPN的安全性一般。
IPSEC(InternetProtocol Security) VPN 是完全基于INTERNET构建的
IPSECVPN为了实现在Internet上安全的传递数据,采用了对称密钥、非对称密钥以及摘要算法等多种加密算法,通过身份认证、数据加密、数据完整性校验等多种方式保证接入的安全,保证的数据的私密性。

15、页表项(页描述子)中各个位的作用:
1.页号
2.块号(页框号)
3. 中断位: 用于判断该页是不是在内存中,如果是0,表示该页面不在内存中,会引起一个缺页中断
4. 保护位(存取控制位):用于指出该页允许什么类型的访问,如果用一位来标识的话:1表示只读,0表示读写
5. 修改位(脏位):用于页面的换出,如果某个页面被修改过(即为脏),在淘汰该页时,必须将其写回磁盘,反之,可以直接丢弃该页
6. 访问位:不论是读还是写(get or set),系统都会设置该页的访问位,它的值用来帮助操作系统在发生缺页中断时选择要被淘汰的页,即用于页面置换
7. 高速缓存禁止位(辅存地址位):对于那些映射到设备寄存器而不是常规内存的页面有用,假设操作系统正在循环等待某个I/O设备对其指令进行响应,保证硬件不断的从设备中读取数据而不是访问一个旧的高速缓存中的副本是非常重要的。即用于页面调入。

8、要明白这种攻击的基本原理,还是要从TCP连接建立的过程开始说起:
大家都知道,TCP与UDP不同,它是基于连接的,也就是说:为了在服务端和客户端之间传送TCP数据,必须先建立一个虚拟电路,也就是TCP连接,建立TCP连接的标准过程是这样的:
首先,请求端(客户端)发送一个包含SYN标志的TCP报文,SYN即同步(Synchronize),同步报文会指明客户端使用的端口以及TCP连接的初始序号;
第二步,服务器在收到客户端的SYN报文后,将返回一个SYN+ACK的报文,表示客户端的请求被接受,同时TCP序号被加一,ACK即确认(Acknowledgment)。
第三步,客户端也返回一个确认报文ACK给服务器端,同样TCP序列号被加一,到此一个TCP连接完成。
以上的连接过程在TCP协议中被称为三次握手(Three-way Handshake)。
问题就出在TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源----数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃---即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况我们称作:服务器端受到了SYN Flood攻击(SYN洪水攻击)。

9、Dos是磁盘操作系统,就是人与机器之前的沟通的桥梁,并不具有线程管理的特性
10、ping命令通过发送ICMP数据包检测网络层是否连通
tracert是用来跟踪路由的命令
telnet命令式通过telnet协议和另一主机相联。
ipconfig是查看ip地址信息

11、每一层的协议如下:
物理层: RJ45 、 CLOCK 、 IEEE802.3(中继器,集线器,网关)
数据链路: PPP 、 FR 、 HDLC 、 VLAN 、 MAC(网桥,交换机)
网络层: IP 、 ICMP 、 ARP 、 RARP 、 OSPF 、 IPX 、 RIP 、 IGRP 、 (路由器)
传输层: TCP 、 UDP 、 SPX
会话层: NFS 、 SQL 、 NETBIOS 、 RPC
表示层: JPEG 、 MPEG 、 ASII
应用层: FTP 、 DNS 、 Telnet 、 SMTP 、 HTTP 、 WWW 、 NFS

12、应用程序在()系统上,相同的数据的条件下多次执行,所需要的时间是可能不同的多用户分时

多道批处理


13、无状态服务器是指一种把每个请求作为与之前任何请求都无关的独立的事务的服务器
<>(第二版)第546页有这样一句话:
虽然HTTP使用TCP的服务,但HTTP本身是无状态协议.客户发送请求报文来初始化这个事务.服务器发送响应来回答.
暗示了TCP协议是一个有状态的协议

14、1、域名解析 DNS (1)域名服务器:完成域名地址到IP地址转化的计算机。 (2)域名服务器上运行着一个数据库系统; (3)数据库中保存着域名地址与IP地址。 (4)用户主机需要把域名地址转化为IP地址时向域名服务器提出查询请求; (5)域名服务器根据用户请求进行查询并把结果返回给用户主机。 2、IP地址与域名的对应关系 (1)一对一: Internet上IP地址是唯一的,一个IP地址对应着唯一的一台主机。 给定一个域名地址能找到一个唯一对应的IP地址。 (2)一对多: 一台计算机提供多个服务,既作www服务器又作邮件服务器。 IP地址还是唯一,但可根据计算机提供的多个服务给予不同域名。 一个 IP地址 对应多个域名

    推荐阅读