码迷,mamicode.com
首页 >  
搜索关键字:用户态    ( 903个结果
ARMv7用户层发生指令异常的处理流程?是否每个进程都有一个APSR的副本?
1、用户层发生指令异常的处理流程? 用户层程序正在执行时,遇到未定义的指令(ARM不是别的指令)或者SWI软件中断指令(产生系统调用),就会产生异常,这里以未定义指令异常为例进行说明:          一旦出现未定义指令异常,CPU会自动做如下操作: (1)未定义模式(ARM其中运行模式的一种)下对应的lr(即R14)寄存器保存当前发生异常的指令下一条指令的地址。例如,在用户态有A B C...
分类:其他好文   时间:2014-06-05 08:48:16    阅读次数:167
fork函数在内核态的追踪
(1)在虚拟机中执行应用程序 (2)程序调用libc里的封装例程 , 封装例程syscall调用,向内核发送系统调用号。具体分析发现。syscall会通过调用__kernel_vsyscall函数发送系统调用号。 (3)__kernel_vsyscall函数执行sysenter快速系统调用,由用户态进入内核态。 (4)sysenter进入内核态时,会先找到执行系统调用的入口函数ia32_sysenter_target。 (5)执行到sysenter_do_call函数处,通过call *sys_call_...
分类:其他好文   时间:2014-05-25 13:03:55    阅读次数:396
C1000k 新思路:用户态 TCP/IP 协议栈
现在的服务器支撑上百万个并发 TCP 连接已经不是新闻。实现 C1000k 的常规做法是调整内核参数,提高文件数,降低每个连接的内存消耗。在今年的 BSDCan2014 会议上, Patrick Kelsey 介绍了把 FreeBSD 9.x 的 TCP/IP 协议栈移植到了用户态,并用于 WANP...
分类:其他好文   时间:2014-05-22 00:24:22    阅读次数:301
C1000k 新思路:用户态 TCP/IP 协议栈
现在的服务器支撑上百万个并发 TCP 连接已经不是新闻。实现 C1000k 的常规做法是调整内核参数,提高文件数,降低每个连接的内存消耗。 在今年的 BSDCan2014 会议上, Patrick Kelsey 介绍了把 FreeBSD 9.x 的 TCP/IP 协议栈移植到了用户态,并用于 WANProxy 项目。在用户态运行 TCP/IP 协议栈意味着并发 TCP 连接不再占用系统文件数,只占内存,解决了 C1000k 的一大瓶颈,...
分类:其他好文   时间:2014-05-21 11:06:52    阅读次数:453
驱动编程:NtReadVirtualMemory
NtReadVirtualMemory函数位于ntdll中,作用就是把用户态的函数调用翻译成相应的系统调用,进入内核态。内核中一般有一个相同名字的处理函数,接收到该类型的系统调用后做实际的工作。NTSTATUS STDCALLNtReadVirtualMemory(IN HANDLE Process...
分类:其他好文   时间:2014-05-19 18:08:54    阅读次数:337
信号量&读写信号量&完成变量
Linux提供两种信号量: 1、内核信号量,由内核控制路径使用 2、System V IPC信号量,由用户态进程使用 从本质上说,它们实现了一个加锁原语,即让等待者睡眠,直到等待的资源变为空闲。 信号量 内核信号量类似于自旋锁,因为当锁关闭着的时候,它不允许内核控制路径继续运行。然而,当内核内核控制路径试图获取内核信号量所保护的忙资源时,相应的进程被挂起。只有在资源被释放时,进程才再次变...
分类:其他好文   时间:2014-05-18 18:43:39    阅读次数:294
1.绪论
操作系统的基本概念OS要完成的两个目标:1)与硬件部分交互;2)为应用程序提供执行环境OS将PC物理组织的低层细节对用户隐藏.该特性依靠特殊的硬件特性来禁止用户APP直接与低层硬件进行交互,或者禁止直接访问任意的物理地址硬件为CPU引入了两种执行模式:特权模式(内核态)/非特权(用户态)多用户系统:...
分类:其他好文   时间:2014-05-15 14:11:03    阅读次数:202
5,内核同步
内核抢占无论在抢占还是非抢占内核中,运行在内核态的进程都可以自动放弃CPU.称为计划性进程切换.但是,抢占式内核在相应引起进程切换的异步事件的方式上有差异,称为强制性进程切换.抢占式内核的特点: 一个在内核态运行的进程,可能在执行内核函数期间被另一个进程取代.可抢占式的目的是减少用户态进程的分派延迟...
分类:其他好文   时间:2014-05-15 12:00:23    阅读次数:209
驱动程序调用驱动程序2
上一篇说到内核里面用户态这边差不多的函数, 比如ZwCreateFile, ZwReadFile什么之类的, 内核里面其实还有些更加暴力的东西存在的, 比如说用户态这边打开设备只有一个句柄, 但是内核里面是可以直接触摸到指针的, 用户态那边只可以调用几个固定的函数来发送Irp. 那么内核里面可以自定...
分类:其他好文   时间:2014-05-08 12:15:00    阅读次数:510
驱动程序调用驱动程序1
除了在Win32下面可以调用ReadFile, WriteFile之类的函数打开设备对象, 在内核中也是可以的, 而且方法比用户态这边更多. 首先这种方法就是Win32上面相同的方式了, 直接打开设备. 内核也有一套函数类似Win32下面的CreateFile, WriteFile, ReadFil...
分类:其他好文   时间:2014-05-08 12:04:23    阅读次数:315
903条   上一页 1 ... 88 89 90 91 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!