Skip to content

Latest commit

 

History

History
287 lines (136 loc) · 19.1 KB

计算机基础.md

File metadata and controls

287 lines (136 loc) · 19.1 KB

计算机基础

1.ICMP 是什么协议?处于哪一层?

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。属于网络层协议

控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

2.什么是程序局部性?为什么会有程序的空间局部性?

程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。

程序的空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。

3.谈一谈 TCP 与 UDP 的区别。

TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。

TCP提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等

UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。

4.网络协议的三个核心要素是什么?各有什么作用?

答:

语法,定义了数据与控制信息的格式;

语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应;

同步,定义了事件实现顺序的详细说明;

5.为了实现重定位,需要哪些硬件?

答:

最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。

6.在交互式系统中,非剥夺是不是一个好的策略?为什么?

答:

非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。

剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程、优先原则、时间片原则。

在分时系统中不剥夺并不是一个好的策略。因为,在分时系统中,除了交互性以外,及时性是很重要的性能因素。当一个作业被阻塞后,CPU就完全空闲了,别的用户的及时性就无法保证了,而完全可以把这些时间分配给别的作业运行。以提高整体的吞吐量。

7.何为死锁?何为系统调用?

答:

死锁:指多个有关进程由于争夺资源而造成的一种僵局,在无外力的情况下这些进程都将无法再向前推进的状态。

系统调用:系统调用是OS与应用程序之间的接口,它是用户程序取得OS服务的惟一途径。

它与一般的过程调用的区别:

运行在不同的系统状态。调用程序在运行在用户态,而被调用的程序运行在系统态;

通过软中断机制,先由用户态转为系统态,经枋心分析后,才能转向相应的系统调用处理子程序;一般的过程调用返回后继续执行,但对系统调用,当调用的进程仍具有最高优先权时,才返回到调用进程继续处理;否则只能等被重新调度;

8.CPU 不执行程序的时候在干什么?

答:

当没有被任何程序使用的时候,计算机的处理器被认为是空闲的。当然下面提到的空闲任务不在此列中。当有程序利用CPU空闲时间的时候,就意味着它以较低的优先权运行着,以便不会影响那有正常优先权的程序运行。一般来讲,这会引起CPU消耗更多的电能,而大多数的现代CPU当它们空闲的时候是能够进入省电模式的。大多数操作系统都有个空闲任务,它是一个特殊的任务。仅当CPU无事可做的时候由操作系统调度器载入它。在现代的处理器中,HLT停机指令节省了大量的电能与执量,而空闲任务几乎总是由一个重复执行HLT停机指令的循环组成。

9.试举例解释一下同步和互斥

答:

同步表现为直接制约,如管道通信,一个进程写,一个进程读,它们是相互制约的。

互斥表现为间接制约,比如多个进程同时请求打印机(没使用SPOOLing技术)、多个进程同时请求一张网卡发送数据包等。

10.在可变分区管理中,需要哪些硬件机制?

答:

采用可变分区方式管理时,一般均采用动态重定位方式装入作业。地址变换要靠硬件支持,主要是两个寄存器:基址寄存器和限长寄存器,限长寄存器存放作业所占分区的长度,基址寄存器则存放作业所占分区的起始地址,这两个值确定了一个分区的位置和大小。

转换时根据逻辑地址与限长值比较,如果不有超过这个值,表示访问地址合法,再加上基址寄存器中的值就得到了绝对地址了,否则形成“地址越界”中断。

11.谈一谈中断和陷入的区别

外中断时指来自处理机和内存外部的中断,如I/O中断、定时器中断、外部信号中断等。狭义上也叫中断;

内中断主要指在处理机和内存内部产生的中断,也称陷入,如校验错、页面失效、溢出、除数为零等;

中断和陷阱的主要区别:

(1)陷入通常由处理机正在执行的现行指令引起,而中断则是由与现行指令无关的中断源引起的。

(2) 陷阱处理程序提供的服务为当前进程所用,而中断处理程序提供的服务则不是为了当前进程的。

(3) CPU在执行完一条指令之后,下一条指令开始之前响应中断,而在一条指令执行中也可以响应陷阱。

12.数据库系统和文件系统相比有什么优点?

答:

文件系统

数据库管理系统

某一应用

现实世界

共享性差,冗余度大

共享性高,冗余度小

记录内有结构,整体无结构

整体结构化,用数据模型描述

应用程序自己控制

由数据库管理系统提供数据安全性,完整性,并发控制和恢复能力

独立性差

具有高度的物理独立性和一定的逻辑独立性

13.谈一谈计算机网络和分布式计算机系统的区别

两者在计算机硬件连接、系统拓朴结构和通信控制等方面基本都是一样的,它们都具有通信和资源共享的功能。

区别关键在于:分布式计算机系统是在分布式计算机操作系统支持下,进行分布式数据库处理的,也就是说各互联的计算机可以互相协调工作,共同完成一项任务,多台计算机上并行运行。且具有透明性,用户不知道数据、资源的具体位置,整个网络中所有计算机就像是一台计算机一样;而计算机网络却不具备这种功能,计算机网络系统中的各计算机通常是各自独立进行工作的。

14.为什么要引入多道程序技术?

因为引入多道程序技术后,可以进一步提高了CPU利用率(阻塞),提高内存和I/O设备利用率(小作业把内存浪费了),增加系统吞吐量(两都提高后的必然)。

15.何为管态和目态?它们与进程运行状态的关系是什么?

CPU交替执行操作系统程序和用户程序。管态又叫特权态,系统态或核心态。CPU在管态下可以执行指令系统的全集。通常,操作系统在管态下运行。

目态又叫常态或用户态。机器处于目态时,程序只能执行非特权指令。用户程序只能在目态下运行,如果用户程序在目态下执行特权指令,硬件将发生中断,由操作系统获得控制,特权指令执行被禁止,这样可以防止用户程序有意或无意的破坏系统。

16.何为网络延时?何为完整性约束?

时延(delay或latency)是指一个报文或分组从一个网络(或一条链路)的一端传送到另一端所需的时间。

数据完整性约束指的是为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改、删除等操作时,DBMS自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容。

简单理解:按照一定的约束条件防止不符合规范的数据进入数据库

17.谈一谈你对当前 5G 技术和云计算技术的理解

5G,第五代移动通信技术,有三个关键特征,超高速率,实现每秒10Gb的下载速率,是4G的100倍。超可靠超低时延,实现1ms的低时延,是4G时延的40分之一;超大连接,实现每平方公里100万的连接数,是4G的100倍。

云计算技术:分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。云计算具有很强的扩展性和需要性,可以为用户提供一种全新的体验,云计算的核心是可以将很多的计算机资源协调在一起,因此,使用户通过网络就可以获取到无限的资源,同时获取的资源不受时间和空间的限制。

18.点对点和端对端工作在哪层?工作机制是什么?

点对点协议(Point to Point Protocol)的缩写为PPP,是TCP/IP网络协议包的一个成员。PPP是TCP/IP的扩展,它增加了两个额外的功能组:

(1)它可以通过串行接口传输TCP/IP包;

(2)它可以安全登录。

数据传输的可靠性是通过数据链路层和网络层的点对点和传输层的端对端保证的。点对点是基于MAC地址或者IP地址,是指一个设备发数据给另外一个设备,这些设备是指直连设备包括网卡,路由器,交换机。端对端是网络连接,应用程序之间的远程通信。端对端不需要知道底层是如何传输的,是一条逻辑链路。

端到端与点到点是针对网络中传输的两端设备间的关系而言的。端到端传输指的是在数据传输前,经过各种各样的交换设备,在两端设备问建立一条链路,就像它们是直接相连的一样,链路建立后,发送端就可以发送数据,直至数据发送完毕,接收端确认接收成功。点到点系统指的是发送端把数据传给与它直接相连的设备,这台设备在合适的时候又把数据传给与之直接相连的下一台设备,通过一台一台直接相连的设备,把数据传到接收端。 端到端传输的优点是链路建立后,发送端知道接收设备一定能收到,而且经过中间交换设备时不需要进行存储转发,因此传输延迟小。端到端传输的缺点是直到接收端收到数据为止,发送端的设备一直要参与传输。如果整个传输的延迟很长,那么对发送端的设备造成很大的浪费。端到端传输的另一个缺点是如果接收设备关机或故障,那么端到端传输不可能实现。 点到点传输的优点是发送端设备送出数据后,它的任务已经完成,不需要参与整个传输过程,这样不会浪费发送端设备的资源。另外,即使接收端设备关机或故障,点到点传输也可以采用存储转发技术进行缓冲。点到点传输的缺点是发送端发出数据后,不知道接收端能否收到或何时能收到数据。 在一个网络系统的不同分层中,可能用到端到端传输,也可能用到点到点传输。如Internet网,IP及以下各层采用点到点传输,IP层以上采用端到端传输。

端对端,点对点,只是称为问题,本质区别很小

端对端,主要服务于Application Layer,是说两台主机(终端),跨过网络直接连接

点对点,是说两台主机(终端)在局域网中传输。

19.DBMS 支持哪几种数据模型?SQL 的四个组成部分是什么?

常用的是层次模型,网状模型和关系模型(最重要)

SQL的四个组成部分:

1、数据库模式定义语言DDL:create用来创建数据库中的各种对象——表、视图、索引、同义词、聚簇等

2、数据查询语言dql:基本结构是由SELECT子句,FROM子句和WHERE子句组成的查询块

3、数据操纵语言dml:插入INSERT、更新UPDATE和删除DELETE

4、数据控制语言dcl:用来授予或回收访问数据库的某种特权,并控制数据库操纵事物发生的时间和效果,对数据库实行监视等

20.谈一谈网络时延由哪几个部分组成?各产生于何处?

网络时延主要由发送时延,传播时延,处理时延组成。发送时延是指结点在发送数据时使数据块从结点进入到传输媒体所需的时间,也就是从数据块的第一个比特开始发送算起,到最后一个比特发送完毕所需的时间。发送时延又称为传输时延,它的计算公式是:

发送时延=数据块长度/信道带宽

信道带宽就是数据在信道上的发送速率,它也常称为数据在信道上的传输速率。

传播时延是指从发送端发送数据开始,到接收端收到数据(或者从接收端发送确认帧,到发送端收到确认帧),总共经历的时间。

传播时延 = d/s

d = 物理链路的长度

s = 介质的信号传播速度 (~2x108 m/sec)

处理时延是指计算机处理数据所需的时间,与计算机CPU的性能有关。

21.TCP/IP 网络协议的核心是什么?如何引出"over everything"和"everythingover"。

TCP/IP协议的核心是TCP、UDP和IP协议

分层次画出具体的协议来表示TCP/IP协议族,它的特点是上下两头大而中间小:应用层和网络接口都有很多协议,而中间的IP层很小,上层的各种协议都向下汇聚到一个IP协议中。这种很像沙漏计时器形状的TCP/IP协议族表明:TCP/IP协议可以为各种各样的应用提供服务(everything over ip) 同时TCP/IP协议也允许IP协议在各种各样的网络构成的互联网上运行(IP over everything)。

22.谈一谈 ARP 地址解析协议的工作原理。

网络层以上的协议用IP地址来标识网络接口,但以太数据帧传输时,以物理地址来标识网络接口。因此我们需要进行IP地址与物理地址之间的转化。

对于IPv4来说,我们使用ARP地址解析协议来完成IP地址与物理地址的转化(IPv6使用邻居发现协议进行IP地址与物理地址的转化,它包含在ICMPv6中)。

ARP协议提供了网络层地址(IP地址)到物理地址(mac地址)之间的动态映射。ARP协议 是地址解析的通用协议。

ARP地址解析实现原理

每个主机都会在自己的 ARP 缓冲区中建立一个 ARP 列表,以表示 IP 地址和 MAC 地址之间的对应关系。 主机(网络接口)新加入网络时(也可能只是mac地址发生变化,接口重启等), 会发送免费ARP报文把自己IP地址与Mac地址的映射关系广播给其他主机。 网络上的主机接收到免费ARP报文时,会更新自己的ARP缓冲区。将新的映射关系更新到自己的ARP表中。 某个主机需要发送报文时,首先检查 ARP 列表中是否有对应 IP 地址的目的主机的 MAC 地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送 ARP 数据包,该数据包包括的内容有:源主机 IP 地址,源主机 MAC 地址,目的主机的 IP 地址等。 当本网络的所有主机收到该 ARP 数据包时:

(A)首先检查数据包中的 IP 地址是否是自己的 IP 地址,如果不是,则忽略该数据包。

(B)如果是,则首先从数据包中取出源主机的 IP 和 MAC 地址写入到 ARP 列表中,如果已经存在,则覆盖。

(C) 然后将自己的 MAC 地址写入 ARP 响应包中,告诉源主机自己是它想要找的 MAC 地址。

6.源主机收到 ARP 响应包后。将目的主机的 IP 和 MAC 地址写入 ARP 列表,并利用此信息发送数据。如果源主机一直没有收到 ARP 响应数据包,表示 ARP 查询失败。

23.谈一谈 DNS 域名系统的工作原理

DNS(Domain Name System,域名系统)

因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)

每个IP地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开。有了主机名,就不要死记硬背每台IP设备的IP地址,只要记住相对直观有意义的主机名就行了。这就是DNS协议所要完成的功能。

主机名到IP地址的映射有两种方式:DNS

1)静态映射,每台设备上都配置主机到IP地址的映射,各设备独立维护自己的映射表,而且只供本设备使用;

2)动态映射,建立一套域名解析系统(DNS),只在专门的DNS服务器上配置主机到IP地址的映射,网络上需要使用主机名通信的设备,首先需要到DNS服务器查询主机所对应的IP地址。

通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。在解析域名时,可以首先采用静态域名解析的方法,如果静态域名解析不成功,再采用动态域名解析的方法。可以将一些常用的域名放入静态域名解析表中,这样可以大大提高域名解析效率。

比如我们游览一个网站的时候,打开一个网址, 这个时候 我们的电脑会首先发送一个数据包个 DNS系统 ,DNS系统回应一个数据包给我们,然后再转到我们游览的网站! 那个数据包里面就包含这个 我们访问的这个网站,然后返回来的数据包是 解析成了IP地址,然后就能通过TCP/IP协议通信了!

再比如我们发送baidu.com到DNS服务器,DNS服务器发给我们百度的服务器的IP,如果我们直接输入IP就绕开了解析这一个步骤

24.何为网桥?防火墙的端口防护是指什么?

网桥:网桥(Bridge)像一个聪明的中继器。中继器从一个网络电缆里接收信号, 放大它们,将其送入下一个电缆。相比较而言,网桥对从关卡上传下来的信息更敏锐一些。网桥是一种对帧进行转发的技术,根据MAC分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来。

网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器。

防火墙端口防护:指通过对防火墙的端口开关的设置,关闭一些非必需端口,达到一定安全防护目的行为。

参考

https://blog.csdn.net/lingess/article/details/98479704