操作系统
文章平均质量分 87
coolwriter
这个作者很懒,什么都没留下…
展开
-
同步和互斥
线程同步(互斥锁与信号量的作用与区别)“信号量用在多线程多任务同步的,一个线程完成了某一个动作就通过信号量告诉别的线程,别的线程再进行某些动作(大家都在semtake的时候,就阻塞在 哪里)。而互斥锁是用在多线程多任务互斥的,一个线程占用了某一个资源,那么别的线程就无法访问,直到这个线程unlock,其他的线程才开始可以利用这 个资源。比如对全局变量的访问,有时要加锁,操作完了,在解锁。有的时候锁...转载 2018-05-23 15:50:48 · 181 阅读 · 0 评论 -
c++实现多线程同步
线程同步是指同一进程中的多个线程互相协调工作从而达到一致性。之所以需要线程同步,是因为多个线程同时对一个数据对象进行修改操作时,可能会对数据造成破坏,下面是多个线程同时修改同一数据造成破坏的例子: 1 #include <thread> 2 #include <iostream> 3 4 void Fun_1(unsigned int &counter);...原创 2018-05-23 16:01:27 · 8174 阅读 · 1 评论 -
操作系统内存
什么是操作系统没有清晰的定义,主要实现2个功能: ○1管理,支持应用软件,○2调用分配资源层次在硬件之上,应用程序之下。 Shell linux,windows,android的界面 如gui Kernel 内核 是操作系统的重点,功能包括4部分: CPU(CPU调度,进程,线程管理) 内存(物理内存,虚拟内存) 文件 disk(磁盘块),较为底层,抽象为文件系统 (文件系统...原创 2018-07-12 09:58:40 · 730 阅读 · 0 评论 -
CPU密集型 vs IO密集型
CPU密集型(CPU-bound)CPU密集型也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作大部分的状况是CPU Loading 100%,CPU要读/写I/O(硬盘/内存),I/O在很短的时间就可以完成,而CPU还有许多运算要处理,CPU Loading很高。在多重程序系统中,大部份时间用来做计算、逻辑判断等CPU动作的程序称之CPU bound。例如一个计...原创 2018-07-25 09:32:41 · 452 阅读 · 0 评论