
操作系统
qingen123
生命不息 奋斗不止 LINUX爱好者 世界因你的敲打而改变
展开
-
生产者-消费者问题
单生产者P—单消费者C—单缓冲区B问题1)进程互斥问题:缓冲区B是临界资源,进程P和C不能同时对B进行操作,即只能互斥的操作2)进程同步问题:P不能往“满”的的缓冲区B放产品,C不能从空的缓冲区获得产品。当缓冲区满时,C必须先于P执行,当缓冲区空时,P必须先于C执行;我们给出如下基于记录型(二元)信号量机制的解法// [10/9/2013 qingezha] 1生产者-1消费原创 2013-10-09 11:27:45 · 1115 阅读 · 0 评论 -
同一进程间的线程共享资源
线程共享的环境包括:1.进程代码段 2.进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯) 3.进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组ID。 进程拥有这许多共性的同时,还拥有自己的个性。有了这些个性,线程才能实现并发性。这些个性包括: 1.线程ID 每个线程都有自己的线程原创 2013-10-05 16:35:15 · 1500 阅读 · 2 评论 -
内部碎片 外部碎片
内存碎片的产生: 内存分配有静态分配和动态分配两种 静态分配在程序编译链接时分配的大小和使用寿命就已经确定,而应用上要求操作系统可以提供给进程运行时申请和释放任意大小内存的功能,这就是内存的动态分配。 因此动态分配将不可避免会产生内存碎片的问题,那么什么是内存碎片?内存碎片即“碎片的内存”描述一个系统中所有不可用的空闲内存,这些碎片之所以不能原创 2013-10-29 23:07:44 · 5426 阅读 · 0 评论 -
SSE _align_malloc 数据地址对齐
Core 2的2级Cache1级Cache分为 32KB L1i Cache和32KB L1d Cache,都是8路组相联write back buffer,64bytes per line,每个core拥有独立的L1 Cache,共享L2 Cache和总线接口, L2 Cache为16路组相联,64bytes per line,与L1 Cache之间的数据带宽为256bit。两个Core转载 2014-09-24 20:42:22 · 2482 阅读 · 2 评论