笔试常见简答题

一、进程与线程的区别?  进程之间的通信方式有哪几种? 各自有哪些优缺点?

1. 线程是指进程内的一个执行单元,也是进程内的可调度实体。与进程的区别:

(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位。

(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行。

(3)拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源.

(4)系统开销:在创建或撤消进程时,由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤消线程时的开销

//-------------------------------------------------------

2.进程之间的通信方式有哪几种?  各自有哪些优缺点?

(1) 管道(pipe):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有血缘关系的进程间使用。进程的血缘关系通常指父子进程关系。

(2)有名管道(named pipe):有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间通信。

(3)信号量(semophore):信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它通常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。

(4)消息队列(message queue):消息队列是由消息组成的链表,存放在内核中 并由消息队列标识符标识。消息队列克服了信号传递信息少,管道只能承载无格式字节流以及缓冲区大小受限等缺点。

(5)信号(signal):信号是一种比较复杂的通信方式,用于通知接收进程某一事件已经发生。

(6)共享内存(shared memory):共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问,共享内存是最快的IPC方式,它是针对其他进程间的通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号量配合使用,来实现进程间的同步和通信。

(7)套接字(socket):套接口也是一种进程间的通信机制,与其他通信机制不同的是它可以用于不同及其间的进程通信。

二、内存的分配方式的分配方式有几种?

(1) 从静态存储区分配:此时的内存在程序编译的时候已经分配好,并且在程序的整个运行期间都存在。全局变量,static变量等在此存储。

(2) 在栈区分配:相关代码执行时创建,执行结束时被自动释放。局部变量在此存储。栈内存分配运算内置于处理器的指令集中,效率高,但容量有限。

(3) 在堆区分配:动态分配内存。用new/malloc时开辟,delete/free时释放。生存期由用户指定,灵活。但有内存泄露等问题。

时间: 2024-11-04 20:01:29

笔试常见简答题的相关文章

S2T40.(深入.Net平台和C#编程)第四章.简答题4.刁汉生.20170406

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 简答题.Entity 8 { 9 /// <summary> 10 /// 蚂蚁类 11 /// </summary> 12 public class Ant 13 { 14 //蚂蚁名字 15 publi

S2T40.(深入.Net平台和C#编程)第四章.简答题5.刁汉生.20170406

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 简答题5.Entity 8 { 9 /// <summary> 10 /// 巫师类 11 /// </summary> 12 public class Wizard 13 { 14 /// <sum

他答对一半(打一字)asp.net开源简答题项目

先出个字谜: 他答对一半(打一字) 你猜出来了没? 可以到这个网址答题:http://hovertree.com/shortanswer/bjae/f53e663164227906.htm 看你的答案是否正确. 这是ASP.NET开源CMS项目HoverTree的一个功能:简答题,目前正在测试中,如果你希望这部分的源代码公布的话,请推荐一下本文,给我开发整理代码的动力,谢谢. HoverTree使用的语言是C#,数据库为Sql Server,基于.NET 4.0,使用三层结构,如果你有兴趣的话,

S2T40.(深入.Net平台和C#编程)第四章.简答题4、5.何强.20170406

简答题4: 简答题5

第四章,简答题4-5,2017-4-6

巫师属性类------- 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 第四章_简答题5.entity 8 { 9 public class Wus 10 { 11 public int SM { get; set; }//生命 12 public int Do {

软工期中测试简答题

软工-期中测试简答题 软件危机的具体表现? 1)成本难以估计.成本高. 2)软件开发进度估计不准确,项目延期比比皆是. 3)软件质量得不到保证(功能和性能). 4)用户对"已完成的"软件系统不满意的现象经常发生. 5)维护非常困难(多样性 .复杂性. 副作用). 6)软件通常没有适当的文档. 7)软件产品供不应求,跟不上计算机普及速度. 产生软件危机的原因? (1)软件日益复杂和庞大 (2)软件开发管理困难和复杂 (3)软件开发技术落后 (4)生产方式落后 (5)开发工具落后 (6)软

第二部分:简答题(每题5分,共50分)

第二部分:简答题(每题5分,共50分) 1.写出在DNS服务器主配置文件中配置根提示的指令块.   zone "."IN       {        type hint;        file "named.ca; };   2.简述使用代理服务器和NAT上网的区别.           3.简述查看并设置本机默认网关的步骤.    route –n   [[email protected] 桌面]# vim /etc/sysconfig/network-scripts/

zoj 1891 - 传说中的简答题 - 最短路径 - dijkstra

在复习资料中找到的对应不同类型的题目.想先从简单的题目入手,结果一上来就发现不对劲.感觉有点不简单呀. 之前也是碰到这种问题会畏首畏尾,因为,要计算两点之间的距离的.想着要不要先全部计算出来,放到数组里面分别调用. 但后来又想到不行,这样的时间复杂度更高了,n*(n+1)/2 的时间复杂度.就有点麻乱了. 通过参考网上其他的解答,发现他们也是一边算,一边找的.相比这就是简答题的优势吧. 然后题目的要求是求出最小花费的时间,这几天刚好在复习dijkstra算法.就可以用上了. 这里稍微总结一下:

计算机网络第三章简答题

1 总线型拓扑结构采用什么控制策略?常用什么控制方式,优缺点是什么? 2 星状拓扑结构采用用什么控制策略?优缺点是什么? 3 环状拓扑结构采用用什么控制策略?优缺点是什么? 4 选择拓扑结构的原则是什么? 5 osi模型七层的名称是什么? 6 物理层的主要功能有哪些? 7 数据链路层的功能有哪些? 8 网络层的功能有哪些? 9 传输层的功能有哪些? 10 会话层的功能有哪些?提供哪些服务? 11 表示层的功能有哪些?提供哪些服务? 12 简述csma/cd的工作过程? 13 简述令牌传递控制法的