笔试总结2
来源:互联网 发布:dsd播放软件 编辑:程序博客网 时间:2024/06/03 18:59
(1)A 静态网站指网页是固定的,而不是在用户访问的时候动态生成的
B,可以使用同一个网址访问不同的Web服务器,CDN网络就是这样。比如你在不同的确访问www.baidu.com,指向的服务器ip地址也不同
选择 A
B,可以使用同一个网址访问不同的Web服务器,CDN网络就是这样。比如你在不同的确访问www.baidu.com,指向的服务器ip地址也不同
C,127.0.0.1是本机回环测试地址,等价于localhost,可以访问本地站点
(2)内部网关协议IGP(Interior Gateway Protocol)是指在一个自治系统(AS)内部所使用的一种路由协议。
内部网关协议可分为三类:
1) 距离-矢量路由协议,包括路由信息协议(RIP),内部网关路由协议(IGRP)
2) 连接状态路由协议,包括开放式最短路径优先协议(OSPF),中间系统到中间系统路由交换协议(IS-IS)
3) 高级距离矢量路由协议,包括增强型内部网关路由协议(EIGRP)
RIP:路由信息协议, 是内部网关协议IGP中最先得到广泛使用的协议,是一种分布式的基于距离矢量的路由选择协议,是因特网的标准协议,其最大优点就是实现简单,开销较小。
OSPF:Open Shortest Path First(开放式最短路径优先)
HELLO:是一种网络层协议,它使得网络设备能够互相标识自己的身份,并表明自己仍然处于工作状态。网络上的设备在接收到hello请求后返回hello应答。网络设备按照指定的时间间隔发送hello数据包,以表明自己仍处于工作状态。通过检查hello数据包,网络设备可以学习到其他设备的逻辑地址(ip)或物理地址(mac)。
IS-IS:Intermediate System-to-Intermediate System(中间系统到中间系统)路由协议最初是ISO(the International Organization for Standardization,国际标准化组织)为CLNP(Connection Less Network Protocol,无连接网络协议)设计的一种动态路由协议。
(3)cpu工作状态分为系统态(或称管理态,管态)和用户态(或称目态)。 引入这两个工作状态的原因是:为了避免用户程序错误地使用特权指令,保护操作系统不被用户程序破坏。具体规定为:当cpu处于用户态时,不允许执行特权指令,当cpu处于系统态时,可执行包括特权指令在内的一切机器指令(4)
下面这段代码会打印出什么?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
class
A
{
public
:
A()
{
printf(
"A "
);
}
/*virtual*/
~A()
{
printf(
"deA "
);
}
};
class
B
{
public
:
B()
{
printf(
"B "
);
}
~B()
{
printf(
"deB "
);
}
};
class
C:
public
A,
public
B
{
public
:
C()
{
printf(
"C "
);
}
~C()
{
printf(
"deC "
);
}
};
int
main()
{
A *a =
new
C();
delete a;
return
0
;
}
- A B C deA
- C A B deA
- A B C deC
- C A B deC
如果按题中所说 加入virtual,那么输出的顺序是ABC deC deB deA。由于析构函数是虚函数,动态调用,那么会调用C的析构函数,由于C继承与A和B,所以先调用A B的析构,最后调用自己的。
如果A的析构函数不是虚函数,那么只会调用A的析构函数。
如果A的析构函数不是虚函数,那么只会调用A的析构函数。
(4)
A, finish() 方法就是退出activity
B. actiivity中出现抛异常,会弹出框,强制退出当前activity的。
C. System.exit(0); 这是退出所有activity使用的。
D. onStop() 只是activity一个周期方法,此时还没退出,只有走到onDestory()才退出,
(5)一定要注意,操作系统是系统软件,不是应用软件。
(6)
bash中有两个内置的命令declare 和 typeset 可用于创建变量。除了使用内置命令来创建和设置变量外,还可以直接赋值,格式为:变量名=变量值
注意:变量名前面不应加美元“$”符号。(和PHP不同)
等号“=”前后不可以有空格。
Shell中不需要显式的语法来声明变量。
变量名不可以直接和其他字符相连,如果想相连,必须用括号: echo “this is $(he)llo!”
(7)有向树 A有且仅有一个结点的入度为0; (就是只有一个节点进入的时候边为0)B除树根外的结点入度为1(都是单线) C从树根到任一节点有一条有向通路。(这个是必须的)
(8)用于解决CPU指令乱序、编译器重排、多CPU内存同步等带来的问题的机制是内存屏障
内存屏障可以限制CPU对内存的访问,表现在编程语言上就是上锁!
(9)存放进程的管理和控制信息的数据结构称为进程控制块。它是进程管理和控制的最重要的数据结构,每一个进程均有一个PCB,在创建进程时,建立PCB,伴随进程运行的全过程,直到进程撤消而撤消。
在不同的操作系统中对进程的控制和管理机制不同,PCB中的信息多少也不一样,通常PCB应包含如下一些信息
1、进程标识符 name:
每个进程都必须有一个唯一的标识符,可以是字符串,也可以是一个数字。UNIX系统中就是一个整型数。在进程创建时由系统赋予。
2、进程当前状态 status:
说明进程当前所处的状态。为了管理的方便,系统设计时会将相同的状态的进程组成一个队列,如就绪进程队列,等待进程则要根据等待的事件组成多个等待队列,如等待打印机队列、等待磁盘I/O完成队列等等。
3、进程相应的程序和数据地址,以便把PCB与其程序和数据联系起来。
4、进程资源清单。列出所拥有的除CPU外的资源记录,如拥有的I/O设备,打开的文件列表等。
5、进程优先级 priority:
进程的优先级反映进程的紧迫程序,通常由用户指定和系统设置。UNIX系统采用用户设置和系统计算相结合的方式确定进程的优先级 。
6、CPU现场保护区 cpustatus:
当进程因某种原因不能继续占用CPU时(等待打印机),释放CPU,这时就要将CPU的各种状态信息保护起来,为将来再次得到处理机恢复CPU的各种状态,继续运行。
7、进程同步与通信机制 用于实现进程间互斥、同步和通信所需的信号量等。
在不同的操作系统中对进程的控制和管理机制不同,PCB中的信息多少也不一样,通常PCB应包含如下一些信息
1、进程标识符 name:
每个进程都必须有一个唯一的标识符,可以是字符串,也可以是一个数字。UNIX系统中就是一个整型数。在进程创建时由系统赋予。
2、进程当前状态 status:
说明进程当前所处的状态。为了管理的方便,系统设计时会将相同的状态的进程组成一个队列,如就绪进程队列,等待进程则要根据等待的事件组成多个等待队列,如等待打印机队列、等待磁盘I/O完成队列等等。
3、进程相应的程序和数据地址,以便把PCB与其程序和数据联系起来。
4、进程资源清单。列出所拥有的除CPU外的资源记录,如拥有的I/O设备,打开的文件列表等。
5、进程优先级 priority:
进程的优先级反映进程的紧迫程序,通常由用户指定和系统设置。UNIX系统采用用户设置和系统计算相结合的方式确定进程的优先级 。
6、CPU现场保护区 cpustatus:
当进程因某种原因不能继续占用CPU时(等待打印机),释放CPU,这时就要将CPU的各种状态信息保护起来,为将来再次得到处理机恢复CPU的各种状态,继续运行。
7、进程同步与通信机制 用于实现进程间互斥、同步和通信所需的信号量等。
8、进程所在队列PCB的链接字
根据进程所处的现行状态,进程相应的PCB参加到不同队列中。PCB链接字指出该进程所在队列中下一个进程PCB的首地址。
根据进程所处的现行状态,进程相应的PCB参加到不同队列中。PCB链接字指出该进程所在队列中下一个进程PCB的首地址。
9、与进程有关的其他信息。
如进程记账信息,进程占用CPU的时间等。
如进程记账信息,进程占用CPU的时间等。
(10)
两者都可以提高程序的并发度,提高程序运行效率和响应时间。
线程和进程的区别联系:
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。 两者都可以提高程序的并发度,提高程序运行效率和响应时间。
线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程适合于在SMP机器上运行,而进程则可以跨机器迁移。
根本区别就一点:用多进程每个进程有自己的地址空间(address space),线程则共享地址空间。所有其它区别都是由此而来的:
1、速度:线程产生的速度快,线程间的通讯快、切换快等,因为他们在同一个地址空间内。
2、资源利用率:线程的资源利用率比较好也是因为他们在同一个地址空间内。
3、同步问题:线程使用公共变量/内存时需要使用同步机制还是因为他们在同一个地址空间内
1、速度:线程产生的速度快,线程间的通讯快、切换快等,因为他们在同一个地址空间内。
2、资源利用率:线程的资源利用率比较好也是因为他们在同一个地址空间内。
3、同步问题:线程使用公共变量/内存时需要使用同步机制还是因为他们在同一个地址空间内
(11)当服务器多为动态请求时,keep-alive关闭比较好,能够节省一开定的内存开销。可以在服务器端设置是否支持keep-alive
在HTTP1.0和HTTP1.1协议中都有对KeepAlive的支持。其中HTTP1.0需要在request中增加“Connection: keep-alive” header才能够支持,而HTTP1.1默认支持
当使用Keep-Alive模式时,Keep-Alive功能使客户端到服 务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接
(12)#include <iostream>
using namespace std;
int
main(
void
)
{
const
int
a =
10
;
int
* p = (
int
*)(&a);
*p =
20
;
cout<<
"a = "
<<a<<
", *p = "
<<*p<<endl;
return
0
;
}
输出
a = 10, *p = 20a = 10, *p = 20 因为使用const 编译器会优化,对于以后见到a ,编译器立马用10替代. 而p是新定义的一个指针变量,开始p通过 int *p = (int *)(&a); 获得了栈区常量a的地址.即p指向这个地址,但是因为const 导致编译器优化,直接在符号表中 用10代替a了,所以导致 打印a还是10,而打印那个内存单元的地址就变成了 20
0 0
- 笔试总结 - 2
- 笔试总结2
- 笔试总结2
- 笔试总结2
- 笔试总结(2)
- 笔试题目总结2
- yulong通讯笔试总结(2)
- c++笔试题总结2
- Android笔试总结笔试
- 笔试总结
- 笔试总结
- 笔试总结
- 笔试总结
- 笔试总结
- 笔试总结
- 笔试总结
- 笔试总结
- 笔试总结
- HDU 5833 高斯消元
- jQuery小入门
- Hadoop最全生态系统介绍
- ACM 搜索算法 知识点总结 (二)
- mybatis入门
- 笔试总结2
- 谈谈自学java的经历
- RecyclerView浅析
- 串最基本的5个操作的C实现
- rest
- 推荐之协同过滤(思路简单梳理)
- MyEclipse 优化设置以及使用技巧总结
- Android微信支付功能
- 2553. 【NOIP2011模拟9.7】射命丸文 (StandardIO)