
操作系统
独壹@无贰
李日祥的个人博客
展开
-
堆栈区别
堆(heap) 堆是一个内存空间,这个内存控件可以由程序员分配和释放 优点:编译器不必知道要从堆里分配多少内存空间,也不必知道存储的数据要在堆里停留多长的时间,因此用堆保存数据时会得到更大的灵活性 缺点:由于从操作系统管理的内存分配,所以在分配和销毁时都要占用时间,因此用堆的效率相对栈来说略低 栈(stack) 栈是由编译器自动分配和释放的,存放函数的参数值,局部变量的值等 优点:存取速度比堆要快,仅次于寄存器,栈数据可以共享 缺点:存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。 ...原创 2020-07-14 15:14:06 · 175 阅读 · 0 评论 -
进程间的通讯方式的优缺点
管道 优点:比较简单 缺点:效率低下 消息队列 优点:进程的数据放在某个内存之后就马上让进程返回 缺点:如果 a 进程发送的数据占的内存比较大,并且两个进程之间的通信特别频繁的话,消息队列模型就不大适合了 共享内存 优点:解决拷贝所消耗的时间了 缺点:多进程竞争内存的问题,就像类似于我们平时说的线程安全问题 信号量 优点:解决多进程竞争内存的问题 Socket 优点:两个相隔几千里的进程能够进行通信 ...原创 2020-07-14 14:53:51 · 748 阅读 · 0 评论