操作系统
哈哈哈呀啦啦啦
这个作者很懒,什么都没留下…
展开
-
各类锁(互斥锁,自旋锁,读写锁,乐观锁,悲观锁,死锁)
互斥锁:当有一个线程要访问共享资源(临界资源)之前会对线程访问的这段代码(临界区)进行加锁。如果在加锁之后没释放锁之前其他线程要对临界资源进行访问,则这些线程会被阻塞睡眠,直到解锁,如果解锁时有一个或者多个线程阻塞,那么这些锁上的线程就会变成就绪状态,然后第一个变为就绪状态的线程就会获取资源的使用权,并且再次加锁,其他线程继续阻塞等待。读写锁:也叫做共享互斥锁,读模式共享,写模式互斥。有点像...原创 2020-03-24 22:35:28 · 567 阅读 · 0 评论 -
操作系统-----缓存和内存
高速缓存(cache)由于CPU的读取速度比内存的读取速度快,如果持续在CPU和内存之间一直来回不停的交换的话,那么CPU的运转周期就会出现了很大的浪费,所以出现了高速缓存,提供缓存的目的一般是为了让数据访问的速度适应CPU的处理速度,一般是使用硬件实现的指令预测与数据预取技术----尽可能的将要使用的数据预先从内存中取到缓存中。如今缓存的概念已经扩充,不仅是CPU和主内存之间有Cache,而...原创 2020-03-24 02:35:43 · 546 阅读 · 0 评论 -
段式管理和页式管理
内存管理第一谈:段式管理和页式管理 对于内存管理这个操作系统中庞大的体系,实在是容易让人望而止步,市面上介绍这块知识的书籍其实很多,但是由于书面语言的缘故,总感觉有些...转载 2020-03-24 02:16:10 · 468 阅读 · 0 评论 -
页式管理
内部碎片:已经被分配出去的的内存空间大于请求所需的内存空间。外部碎片:还没有分配出去,但是由于大小太小而无法分配给申请空间的新进程的内存空间空闲块。 Window内存管理方式主要分为:页式管理、段式管理、段页式管理。1、页式管理用户程序的逻辑地址空间被划分成...原创 2020-03-24 01:57:59 · 676 阅读 · 0 评论 -
缺页异常
页式管理机制通过页面目录,页面表,将每一个线性地址(虚拟地址)转换成物理地址,但并不是每一次CPU都能访问到相应的物理内存单元,因此这样映射便失败了,会产生缺页异常;页错误,又叫页缺失,计算机系统术语,是指在引入分页机制的操作系统中,一个进程的代码和数据被放置在一个虚拟的地址空间中,地址空间按固定长度划分为好多页。同时,物理内存也按固定长度划分为好多帧。因为物理内存小而硬盘空间大,为了在内存里...原创 2020-03-24 00:51:20 · 628 阅读 · 0 评论 -
线程调度为什么比进程调度更少开销?
线程调度为什么比进程调度更少开销?在对比进程调度...原创 2020-03-22 22:44:10 · 720 阅读 · 0 评论 -
虚拟内存
目录1. 虚拟内存1.1 linux进程内存布局内...原创 2020-03-12 12:25:20 · 225 阅读 · 0 评论 -
进程、线程和前台进程、后台进程
进程进程:是正在执行的一个程序(软件)或者命令,每一个进程都是一个运行的实体都有自己的地址空间,并且占用一定的系统资源。说白了进程就是正在运行着的程序,只要运行就会产生至少一个进程。为什么说只要程序运行就至少会产生一个进程呢?:就是说这个程序是共享的,而并非是同步的,程序可以被多次使用但是互不影响,比如Word创建一个文档,也可以创建多个文档每一个文档打开并且编辑,就是一个Word进程...原创 2019-12-24 19:55:08 · 512 阅读 · 0 评论 -
什么是CPU密集型、IO密集型?
**cpu密集型**CPU密集型也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作大部分的状况是CPU Loading 100%,CPU要读/写I/O(硬盘/内存),I/O在很短的时间就可以完成,而CPU还有许多运算要处理,CPU Loading很高。在多重程序系统中,大部份时间用来做计算、逻辑判断等CPU动作的程序称之CPU bound。例如一个计算圆周率至小数...原创 2019-12-24 19:01:00 · 116 阅读 · 0 评论