码迷,mamicode.com
首页 >  
搜索关键字:用户态 内核态    ( 1022个结果
块设备的读流程分析
关于VFS的通用读,我们不做考虑,本文以如下函数为根,往下分析:do_generic_mapping_read(*ppos,*mapping,*desc)本函数的目的是,从磁盘读数据到用户态,先是从*ppos开始的页,一直读到*ppos+desc->count 为止的,这么多个页,然后拷贝desc-...
分类:其他好文   时间:2014-07-16 21:53:13    阅读次数:326
同步I/O操作和异步I/O操作
当执行I/O操作的时候,无论是同步I/O操作还是异步I/O操作,都会调用的Windows的API方法,比如,当读取文件的时候,调用ReadFile函数。该方法会将你的当前线程从用户态转变成内核态,会生成一个I/O请求包,并且初始化这个请求包,这个包中包含一个文件句柄,一个偏移量和一个Byt..
分类:其他好文   时间:2014-07-10 17:52:44    阅读次数:664
Linux文件系统的设计
总论:linux的文件系统设计非常优秀,总的来讲有两大部分,第一部分就是树形的组织结构,第二部分就是vfs,树形的组织结构组织了文件系统的表象,用户非常方便的使用,而vfs是文件系统的实现机理,它处于内核态,不但实现了树形结构的mount机制,并且还提供了一个统一的接口用来訪问设备。一、Linux文...
分类:系统相关   时间:2014-07-07 15:43:27    阅读次数:240
spin_lock & mutex_lock的差别?
本文由该问题引入到内核锁的讨论,归纳例如以下为什么须要内核锁?多核处理器下,会存在多个进程处于内核态的情况,而在内核态下,进程是能够訪问全部内核数据的,因此要对共享数据进行保护,即相互排斥处理有哪些内核锁机制?(1)原子操作atomic_t数据类型,atomic_inc(atomic_t *v)将v...
分类:其他好文   时间:2014-07-05 17:44:12    阅读次数:155
malloc原理和内存碎片
当一个进程发生缺页中断的时候,进程会陷入内核态,执行以下操作:1、检查要访问的虚拟地址是否合法2、查找/分配一个物理页3、填充物理页内容(读取磁盘,或者直接置0,或者啥也不干)4、建立映射关系(虚拟地址到物理地址)重新执行发生缺页中断的那条指令如果第3步,需要读取磁盘,那么这次缺页中断就是majfl...
分类:其他好文   时间:2014-07-03 22:30:43    阅读次数:217
NtCallbackReturn是否导致了用户态栈的不平衡
0:000> u ntdll!KiFastSystemCallntdll!KiFastSystemCall:7c92eb8b 8bd4 mov edx,esp7c92eb8d 0f34 sysenterntdll!KiFastSystemCallR...
分类:其他好文   时间:2014-07-01 23:17:25    阅读次数:267
Linux 下IO端口编程访问
以前写的一篇笔记,偶尔翻出来了,放在这里做个纪念 Linux 下IO端口编程访问 这里记录的方法是在用户态访问IO端口,不涉及驱动程序的编写。 首先要包含头文件 /usr/include/asm/io.h ioperm() 在 unistd.h 中声明。用来打开对IO端口的访问权限,要求程序执行时必须有root 权限。只可以打开0x00到0x3ff 这一地址段的IO端口。  iop...
分类:系统相关   时间:2014-07-01 11:03:08    阅读次数:368
利用Inotify和Rsync将web工程文件自动同步到多台应用服务器
背景:需要搭建一套跟线上一模一样的环境,用来预发布,这是其中的web分发的一个小模块的实现过程。 1 工具以及环境简介1.1,Inotify工具Inotify,它是一个内核用于通知用户空间程序文件系统变化的机制。众所周知,Linux 桌面系统与 MAC 或 Windows 相比有许多不如人意的地方,为了改善这种状况,开源社区提出用户态需要内核提供一些机制,以便用户态能够及时地得知内核或底层硬件设备...
分类:Web程序   时间:2014-07-01 07:44:44    阅读次数:257
利用Inotify和Rsync将web工程文件自动同步到多台应用服务器
背景:需要搭建一套跟线上一模一样的环境,用来预发布,这是其中的web分发的一个小模块的实现过程。 1 工具以及环境简介1.1,Inotify工具Inotify,它是一个内核用于通知用户空间程序文件系统变化的机制。众所周知,Linux 桌面系统与 MAC 或 Windows 相比有许多不如人意的地方,为了改善这种状况,开源社区提出用户态需要内核提供一些机制,以便用户态能够及时地得知内核或底层硬件设备...
分类:Web程序   时间:2014-06-30 18:39:06    阅读次数:350
Linux 下IO端口编程访问
以前写的一篇笔记,偶尔翻出来了,放在这里做个纪念 Linux 下IO端口编程访问 这里记录的方法是在用户态访问IO端口,不涉及驱动程序的编写。 首先要包含头文件 /usr/include/asm/io.h ioperm() 在 unistd.h 中声明。用来打开对IO端口的访问权限,要求程序执行时必须有root 权限。只可以打开0x00到0x3ff 这一地址段的IO端口。  iop...
分类:系统相关   时间:2014-06-30 16:30:54    阅读次数:302
1022条   上一页 1 ... 97 98 99 100 101 ... 103 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!