进程地址空间
共享内存
信号掩码
已打开的文件描述符
- 子进程继承父进程
- 用户号UIDs和用户组号GIDs
- 环境Environment
- 堆栈
- 共享内存
- 打开文件的描述符
- 执行时关闭(Close-on-exec)标志
- 信号(Signal)控制设定
- 进程组号
- 当前工作目录
- 根目录
- 文件方式创建屏蔽字
- 资源限制
- 控制终端
-
子进程独有
- 进程号PID
- 不同的父进程号
- 自己的文件描述符和目录流的拷贝
- 子进程不继承父进程的进程正文(text),数据和其他锁定内存(memory locks)
- 不继承异步输入和输出
-
父进程和子进程拥有独立的地址空间和PID参数。
- 子进程从父进程继承了用户号和用户组号,用户信息,目录信息,环境(表),打开的文件描述符,堆栈,(共享)内存等。
- 经过fork()以后,父进程和子进程拥有相同内容的代码段、数据段和用户堆栈,就像父进程把自己克隆了一遍。事实上,父进程只复制了自己的PCB块。而代码段,数据段和用户堆栈内存空间并没有复制一份,而是与子进程共享。只有当子进程在运行中出现写操作时,才会产生中断,并为子进程分配内存空间。由于父进程的PCB和子进程的一样,所以在PCB中断中所记录的父进程占有的资源,也是与子进程共享使用的。这里的“共享”一词意味着“竞争” 。
扇区
页面
簇
文件
从应用程序包括用户界面的角度来看,存取信息的最小单位是Byte(字节);
从磁盘的物理结构来看存取信息的最小单位是扇区,一个扇区是512字节;
从操作系统对硬盘的存取管理来看,存取信息的最小单位是簇,簇是一个逻辑概念,一个簇可以是2、4、8、16、32或64个连续的扇区。一个簇只能被一个文件占用,哪怕是只有1个字节的文件,在磁盘上存储时也要占用一个簇,这个簇里剩下的扇区是无用的。所以,簇可以理解为磁盘存取信息的最小单位。
255.0.0.0
255.255.0.0
255.255.128.0
255.255.240.0
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”开始,为将来使用保留。
全零(“0.0.0.0”)地址对应于当前主机。全“1”的IP地址(“255.255.255.255”)是当前子网的广播地址。
在IP地址3种主要类型里,各保留了3个区域作为私有地址,其地址范围如下:
A类地址:10.0.0.0~10.255.255.255
B类地址:172.16.0.0~172.31.255.255
C类地址:192.168.0.0~192.168.255.255
A类地址的第一组数字为1~126。注意,数字0和 127不作为A类地址,数字127保留给内部回送函数,而数字0则表示该地址是本地宿主机,不能传送。
B类地址的第一组数字为128~191。
C类地址的第一组数字为192~223。
21.1.200.0/22
21.1.192.0/23
21.1.192.0/21
21.2.224.0/20
参考路由汇聚算法了解该知识点。 193 = 1100,0001 194 = 1100,0010 193和194的前6位相同,因此掩码长度为8+8+6 = 22。而1100,0000 = 192。 因此,最终答案为21.1.192.0/22。
但是题目选项中没有该选项,因此,需要找一个包含正确答案的最佳选项,即21.1.192.0/21。正确答案是C。
6.从一副标准扑克牌中抽牌,抽到黑色牌就继续抽,直至抽到红色牌,则停止。按照概率算,平均下来每次能抽到多少张牌?(也就是三国杀中甄姬的洛神技能,得到牌数的期望值)
正确答案: A 你的答案: B (错误)
1
1.2
0.8
0.9
正确答案是A(1)。
抽到黑色牌之后继续抽,表示黑色牌仍放入总扑克牌中,并不取出。因此,每次抽牌,红色和黑色牌的数目都是相同的,每次抽中黑色牌的概率都是1/2。
则平均每次抽中牌的张数(即得到牌数的期望值)为Sn = 1*a1+2*a2+...+n*an = 1*(1/2)+2*(1/4)+...+n*(1/2)^(n+1)
Sn = 1*a1+2*a2+...+n*an = 1*(1/4)+2*(1/8)+...+n*(1/2)^(n+1) (1/2)*Sn = 1*(1/8)+2*(1/16)+...+n*(1/2)^(n+1)+n*(1/2)^(n+2) 作差有, (1/2)*Sn = (1/4)+(1/8)...+(1/2)^(n+1) - n*(1/2)^(n+2) (使用等比数列求和公式求解) (1/2)*Sn = (1/2) - (1/2)^(n+1) - n*(1/2)^(n+2) 最终得到, Sn = 1 - (1/2)^(n) - n*(1/2)^(n+1) Sn = 1 - (n+2)*(1/2)^(n+1)
因此,得到牌的期望值是Sn = 1 - (n+2)*(1/2)^(n+1)。当牌数很多的时候,期望值趋向于1。
DNS的作用是域名和IP地址的相互映射
DNS协议运行在UDP协议之上
DNS协议端口号为53
DNS的默认缓存时间为1小时
解析:DNS是域名系统的缩写,他是由解析器和域名服务器组成的。域名服务器是保存有该网络中所有主机的域名和对应的ip地址。域名必对应一个ip地址,而ip地址不一定有域名。将域名映射为ip地址的过程就称为域名解析。域名虽便于人们记忆,但计算机只能互相认识ip地址。DNS就是进行域名解析的服务器。 DNS主要是UDP协议,但是当请求字节过长超过512字节时,是用TCP协议,它可以分割成多个片段。 所以选C。
DNS的作用是域名和IP地址的相互映射
DNS协议运行在UDP协议之上
DNS协议端口号为53
DNS的默认缓存时间为1小时
struct声明的类型是值类型
值类型是在堆上分配的
值类型不会被垃圾回收
值类型不需要指针来引用
引用类型在堆上分配,值类型在栈上分配
C#的值类型包括:结构体(数值类型、bool型、用户定义的结构体),枚举,可空类型。
C#的引用类型包括:数组,用户定义的类、接口、委托,object,字符串。
2)内存分配方面:
数组的元素不管是引用类型还是值类型,都存储在托管堆上。
引用类型在栈中存储一个引用,其实际的存储位置位于托管堆。简称引用类型部署在托管推上。而值类型总是分配在它声明的地方:作为字段时,跟随其所属的变量(实 例)存储;作为局部变量时,存储在栈上。(栈的内存是自动释放的,堆内存是.NET中会由GC来自动释放)
3)适用场合
值类型在内存管理方面具有更好的效率,并且不支持多态,适合用做存储数据的载体;引用类型支持多态,适合用于定义应用程序的行为。
- 引用类型可以派生出新的类型,而值类型不能,因为所有的值类型都是密封(seal)的;
- 引用类型可以包含null值,值类型不能(可空类型功能允许将 null 赋给值类型,如 int? a = null; );
- 引用类型变量的赋值只复制对对象的引用,而不复制对象本身。而将一个值类型变量赋给另一个值类型变量时,将复制包含的值。
12
7
8
16
三个数据,一共6种排列:
int
4B
char
1B
short
2B
根据内存对齐原则:
1.
char
int
short
char1 + 空3 + int4 + short2 + 空2 = 12
2.
char
short
int
char1 + 空1 + short2 + int4 = 8
3.
int
short
char
int4 + short2 + char1 + 空1 = 8
4.
int
char
short
int4 + char1 + 空1 + short2 = 8
5.
short
int
char
short2 + 空2 + int4 + char1 + 空3 = 12
6.
short
char
int
short2 + char1 + 空1 + int4 = 8