详细解释了用户态好核心态的区别以及它们之间转化的方式和条件。涉及到进程切换上下文的保存以及系统调用的原理。...
分类:
系统相关 时间:
2014-12-08 23:09:41
阅读次数:
415
1.内核级线程:切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态;可以很好的利用smp,即利用多核cpu。windows线程就是这样的。用户态转化为内核态的时候需要进行上下文的切换,是耗时的操作,因为有寄存器值的保存装载,内存缓存的失效和载入,中断程序的执行等。
2. 用户级线程内核的切换由用户态程序自己控制内核切换,不需要内核干涉,少了进出内核态...
分类:
编程语言 时间:
2014-12-08 23:05:08
阅读次数:
334
最近在研究网络服务框架方面的东西,发现了一个神奇的东西-协程。
一句话说明什么是线程:协程是一种用户态的轻量级线程。
一句话并不能完全概括协程的全部,但是起码能让我们对协程这个概念有一个基本的印象。
从硬件发展来看,从最初的单核单CPU,到单核多CPU,多核多CPU,似乎已经到了极限了,但是单核CPU性能却还在不断提升。server端也在不断的发展变化。如果将程序分为IO密集型应用和CPU密集型应用,二者的server的发展如下:
IO密集型应用: 多进程->多线程->事件驱动->协程
CPU密集型应用:...
分类:
其他好文 时间:
2014-12-03 19:26:25
阅读次数:
269
进程管理工具htop/glances/dstat的使用Linux中进程的相关知识 1、什么是进程呢?通俗的来说进程是运行起来的程序。唯一标示进程的是进程描述符(PID)。2、进程的分类1)根据在linux不同模式下运行分为:核心态:这类进程运行在内核模式下,执行一些内核指令(Ring 0)。用户态:...
分类:
系统相关 时间:
2014-11-29 23:05:48
阅读次数:
456
http://blog.csdn.net/fatsandwich/article/details/2131707#http://jakielong.iteye.com/blog/771663当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器...
分类:
其他好文 时间:
2014-11-24 22:07:11
阅读次数:
186
内核漏洞概述内核漏洞的分类运行在 Ring0 上的操作系统内核、设备驱动、第三方驱动能共享同一个虚拟地址空间,可以完全访问系统空间的所有内存,而不像用户态进程那样拥有独立私有的内存空间。由于内核程序的特殊性,内核程序漏洞类型也更加丰富。(书中收集了近年内公布的内核漏洞,并将相关的分析资料整理打包)可...
分类:
其他好文 时间:
2014-11-17 19:18:33
阅读次数:
181