码迷,mamicode.com
首页 >  
搜索关键字:用户态 内核态    ( 1022个结果
linux c 用户态调试追踪函数调用堆栈以及定位段错误[转载]
一般察看函数运行时堆栈的方法是使用GDB(bt命令)之类的外部调试器,但是,有些时候为了分析程序的BUG,(主要针对长时间运行程序的分析),在程序出错时打印出函数的调用堆栈是非常有用的。 在glibc头文件"execinfo.h"中声明了三个函数用于获取当前线程的函数调用堆栈。 int backtr ...
分类:系统相关   时间:2017-02-09 16:05:15    阅读次数:394
进程的内存空间布局
进程的内存布局在结构上是有规律的,具体来说对于 linux 系统上的进程,其内存空间一般可以粗略地分为以下几大段【1】,从高内存到低内存排列: 1、内核态内存空间,其大小一般比较固定(可以编译时调整),但 32 位系统和 64 位系统的值不一样。 2、用户态的堆栈,大小不固定,可以用 ulimit ...
分类:系统相关   时间:2017-02-08 13:03:25    阅读次数:225
python之协程
协程,又称微线程,纤程。英文名Coroutine。协程是一种用户态的轻量级线程。所谓用户态就是说协程是由用户来控制的,CPU不认识协程,协程是跑在线程中的。协程拥有自己的寄存器上下文栈。协程调试切换时,将寄存器上下文栈保存到其他地方,在切回来时,恢复先前保存的寄存器上..
分类:编程语言   时间:2017-02-06 18:27:55    阅读次数:202
在linux内核中读写文件
http://blog.csdn.net/tommy_wxie/article/details/8194276 1. 序曲 在用户态,读写文件可以通过read和write这两个系统调用来完成(C库函数实际上是对系统调用的封装)。 但是,在内核态没有这样的系统调用,我们又该如何读写文件呢? 阅读Lin ...
分类:系统相关   时间:2017-02-05 16:36:03    阅读次数:261
python---------协程
协程 协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程。 协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。因此: 协程能保留上一次调用时的状态(即所有局部状态的一个特 ...
分类:编程语言   时间:2017-01-27 00:17:33    阅读次数:278
java学习第22天(关于进程的创建及使用)
多线程其实在操作系统已经深入了解过,现在就不做学习概念,其实理解线程很简单,首先进程就是一种正在内核态运行的软件,而线程就是一种轻量化的进程,和进程不同的是线程一般存在于一个进程中,共享地址空间。具体的可以参考操作系统的课程。 那么java程序的运行原理及JVM的启动是多线程的吗? A:Java命令 ...
分类:编程语言   时间:2017-01-21 00:35:18    阅读次数:241
qt---cdb(Microsoft Console Debugger)调试
支持的调试器 windows系统下主要的调试器: CDB ,只能调试用户程序,只有控制台界面,以命令行形式工作 NTSD, 只能调试用户程序,只有控制台界面,以命令行形式工作 KD,主要用于内核调试,有时候也用于用户态调试,只有控制台界面,以命令行形式工作 WinDbg,在用户态、内核态下都能够发挥 ...
分类:数据库   时间:2017-01-17 18:51:29    阅读次数:529
Linux 系统调用
用户空间的程序无法直接执行内核代码。它们不能直接调用内核空间中的函数,因为内核驻留在受保护的地址空间上。如果进程可以直接在内核的地址空间上读写的话,系统安全就会失去控制。所以,应用程序应该以某种方式通知系统,告诉内核自己需要执行一个系统调用,希望系统切换到内核态,这样内核就可以代表应用程序来执行该系 ...
分类:系统相关   时间:2017-01-16 21:38:48    阅读次数:269
quagga源码分析--内核通信netlink
Linux操作系统中当CPU处于内核状态时,可以分为有用户上下文的状态和执行硬件、软件中断两种。其中当处于有用户上下文时,由于内核态和用户态的内 存映射机制不同,不可直接将本地变量传给用户态的内存区;处于硬件、软件中断时,无法直接向用户内存区传递数据,代码执行不可中断。针对传统的进程间通信 机制,他 ...
分类:Web程序   时间:2017-01-10 12:58:45    阅读次数:1057
协程的实现原理
我们都知道Go语言是原生支持语言级并发的,这个并发的最小逻辑单元就是goroutine。goroutine就是Go语言提供的一种用户态线程,当然这种用户态线程是跑在内核级线程之上的。当我们创建了很多的goroutine,并且它们都是跑在同一个内核线程之上的时候,就需要一个调度器来维护这些gorout ...
分类:其他好文   时间:2017-01-05 07:41:04    阅读次数:265
1022条   上一页 1 ... 53 54 55 56 57 ... 103 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!