
Technique_Computing
blizmax6
______Max
展开
-
Deadlocks
Introduction Dead-lock is situation when two or more competing actions are each waiting for the other to finish, but thus never does.There are four necessary conditions when a dead-lock转载 2011-06-24 02:51:00 · 497 阅读 · 0 评论 -
Processing , Mutex and SpinLock
最近从事多线程相关的编程,对于多线程的性能比较关心,所以去网上找了一些资料。看到了并行实验室的冠诚前辈的博文 学习到了很多,下面是我的学习笔记。光荣属于前辈。 线程锁调用API如下: pthread_mutex_lock(&mutex); pthread_mutex_unlock(&mutex); 自旋锁调用的API 如下:转载 2011-12-30 17:16:42 · 630 阅读 · 0 评论 -
原语 原语操作 原子操作
原语内核或微核提供核外调用的过程或函数称为原语(primitive)。原语是一段用机器指令编写的完成特定功能的程序,在执行过程中不允许中断。BaiDu 解析Introduction操作系统用语范畴。 primitive or atomic action 是由若干多机器指令构成的完成某种特定功能的一段程序,具有不可分割性.即原语的执行必须是连续的,在执行过程转载 2012-01-17 17:07:36 · 10660 阅读 · 0 评论 -
临界区,互斥量,信号量,事件的区别(线程同步) 收藏
四种进程或线程同步互斥的控制方法1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2、互斥量:为协调共同对一个共享资源的单独访问而设计的。 3、信号量:为控制一个具有有限数量用户资源而设计。 4、事件:用来通知线程有一些事件已发生,从而启动后继任务的开始。 临界区(CriticalSection)保证在某一时刻只有一个线程能访问数据转载 2012-01-17 16:49:00 · 1098 阅读 · 0 评论 -
Semaphore And Mutex - 信号量与互斥锁
信号量与普通整型变量的区别: ①信号量(semaphore)是非负整型变量,除了初始化之外,它只能通过两个标准原子操作:wait(semap) , signal(semap) ; 来进行访问;②操作也被成为PV原语(P来源于Dutch proberen"测试",V来源于Dutch verhogen"增加"),而普通整型变量则可以在任何语句块中被访问;信号量与互斥锁之间的区别:转载 2012-01-17 16:29:14 · 837 阅读 · 0 评论 -
保护模式和实模式 Introduction
实模式:寻址采用和8086相同的16位段和偏移量,最大寻址空间1MB,最大分段64KB。可以使用32位指令。32位的x86 CPU用做高速的8086。 保护模式:寻址采用32位段和偏移量,最大寻址空间4GB,最大分段4GB (Pentium Pre及以后为64GB)。在保护模式下CPU可以进入虚拟8086方式,这是在保护模式下的实模式程序运行环境。 保护模式同实模式的根本区别是转载 2011-12-06 23:51:53 · 491 阅读 · 0 评论 -
进程间通讯- Introduction
进程通常被定义为一个正在运行的程序的实例,它由两个部分组成: 一个是操作系统用来管理进程的内核对象。内核对象也是系统用来存放关于进程的统计信息的地方 另一个是地址空间,它包含所有的可执行模块或DLL模块的代码和数据。它还包含动态分配的空间。如线程堆栈和堆分配空间。每个进程被赋予它自己的虚拟地址空间,当进程中的一个线程正在运行时,该线程可以访问只属于它的进程的内存。属于其它进程的内存转载 2011-11-28 16:39:46 · 528 阅读 · 0 评论 -
进程间通信 - 内存映射文件
进程间通信之内存映射文件 摘要:我们实际的开发中经常可能遇到我们的后台系统需要通过回前台UI进程通知用户一些消息,这样两个进程之间就不可避免的产生的通信的需求。幸运的是Windows给我们提供了很多进程间能通信的方法,如:剪贴板、窗口消息、共享内存、管道、套接字等,我们这里讨论一下共享内存方式进程间通信。 关键词:进程间通信,内存映射文件,VC++,WindowsAPI转载 2011-11-28 16:34:25 · 1045 阅读 · 0 评论 -
同步,异步 and 阻塞,非阻塞
Introductionsynchronous(同步) :函数没有执行完不返回,线程被挂起 Asynchronous(异步) :函数立即返回,通过事件或是信号通知调用者Block(阻塞) :没有收完数据函数不返回,线程也被挂起Non-Block(非阻塞) :函数立即返回,通过select通知调用者转载 2011-06-24 03:43:00 · 391 阅读 · 0 评论 -
Processing- CreateThread()
程序员对于Windows程序中应该用_beginthread还是CreateThread来创建线程,一直有所争论。本文将从对CRT源代码出发探讨这个问题。I. 起因今天一个朋友问我程序中究竟应该使用_beginthread还是CreateThread,并且告诉我如果使用不当可能会有内存泄漏。其实我过去对这个问题也是一知半解,为了对朋友负责,专门翻阅了一下VC的运行库(CRT)源代码,终于找转载 2012-09-28 02:40:27 · 1018 阅读 · 0 评论