自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 进程间通信共享内存

共享内存是系统出于多个进程之间通讯的考虑,而预留的的一块内存区。在/proc/sys/kernel/目录下,记录着共享内存的一些限制,如一个共享内存区的最大字节数shmmax,系统范围内最大共享内存区标识符数shmmni等,可以手工对其调整,但不推荐这样做。  一、应用  共享内存的使用,主要有以下几个API:ftok()、shmget()、shmat()、shmdt()及shmc

2013-07-31 22:03:08 504

转载 有名管道和无名管道

无名管道和有名管道(2012-05-07 22:54:53)转载▼标签:杂谈分类: 学习笔记管道是Linux支持的最初Unix IPC形式之一,具有以下特点:管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道;只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程);单独构成一种独立的文件

2013-07-28 11:34:04 907

转载 pipe和FIFO

首先来看pipe:pipe用于具有相同祖先的进程(最简单的情况:父子进程)之间的通信。在进程中调用pipe函数创建管道。这个管道是由内核创建并管理的。    #include    int pipe(intfiledes[2]);该函数返回一个文件描述符数组fd[],fd[0]用于读管道,fd[1]用于写管道。如下图:与 FIFO" title="pipe 

2013-07-28 11:32:16 1244

原创 进程的三种基本状态及转换原因

1.进程的三种基本状态    进程在运行中不断地改变其运行状态。通常,一个运行进程必须具有以下三种基本状态。 就绪(Ready)状态    当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。 执行(Running)状态    当进程已获得处理机,其程序正在处理机上执行,此时的进程状态称为执行状态。 阻塞(Blocked)状态

2013-07-27 11:23:25 34666

转载 unix文件中i节点

2.   一个磁盘可以划分为N多扇区,每个扇区有512字节 。扇区是磁盘上的基本存储单元,我们可以将每个扇区进行编号,这样磁盘就变为一系列编了号的块的组合。3.   磁盘块上存储文件时,按照一定的规律。 每个文件系统分为3部分:超级块,i-节点表,数据区 。超级块 :存放文件系统本身的信息,比如记录了每个区域的大小,或未被使用的磁盘块的信息。(不同版本稍有差别)i-

2013-07-27 08:44:49 3319

转载 操作系统面试题

1、什么是进程(Process)和线程(Thread)?有何区别?  进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的

2013-07-26 21:56:39 816

转载 内存申请与一级二级指针

1.如果是函数内进行内存申请,很简单,标准用法就可以了:test(){int *array;array=(int *)malloc(sizeof(int)*10);//申请10*4 bytes,即10个单位的int内存单元}注意,malloc使用简单,但是注意参数和返回值,参数是申请内存的字节数,多字节的类型如int,short,float等需要乘上类型字节数,返回值是

2013-07-14 20:29:56 653

转载 malloc和free函数机制

free(Ptr);Ptr = NULL;// code...就是这样!当然,具体情况要具体分析以及具体解决。比如说,你定义了一个指针,在一个函数里申请了一块内存然后通过函数返回传递给这个指针,那么也许释放这块内存这项工作就应该留给其他函数了。3、关于函数使用需要注意的一些地方:A、申请了内存空间后,必须检查是否分配成功。B、当不需要再使用申请的内存

2013-07-14 20:28:02 1045 1

转载 C/C++ 内存分配方式,堆区,栈区,new/delete/malloc/free

内存分配方式内存分配方式有三种:[1] 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量, static 变量。[2] 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中 ,效率很高,但是分配的内存容量有限。[3] 从堆上

2013-07-14 20:26:13 606

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除