码迷,mamicode.com
首页 >  
搜索关键字:用户态 内核态    ( 1022个结果
结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程
中断上下文的切换 进程上下文的切换 异常处理过程: 下面从逻辑上完整走一遍中断处理过程(结合中断上下文的切换,以定时器中断为例,假设从用户态进入中断): 1. 定时器连接在8259A可编程中断控制器(PIC,Programmable Interrupt Controller)的0号IRQ线上,0号I ...
分类:系统相关   时间:2020-06-13 17:30:14    阅读次数:59
结合中断上下文切换和进程上下文切换分析Linux内核一般执行过程
1、普通系统调用 系统调用是一种特殊的中断,中断分外部中断(硬件中断)和内部中断(软件中断),内部中断?称为异常(Exception),异常?分为故障(fault)和陷阱(trap),系统调?就是利?陷阱(trap)这种软件中断?式是主动从?户态进?内核态的。但是,一般从用户态进入内核态,是由两种方 ...
分类:系统相关   时间:2020-06-12 20:05:32    阅读次数:62
避坑指南:关于SPDK问题分析过程
【前言】 这是一次充满曲折与反转的问题分析,资料很少,代码很多,经验很少,概念很多,当内核态,用户态,DIF,LBA,大页内存,SGL,RDMA,NVME和SSD一起迎面而来的时候,问题是单点的意外,还是群体的无奈? 为了加深记忆,也为了分享出来给人以启示,特记录这次问题分析过程。 【现象】 同事L ...
分类:其他好文   时间:2020-06-10 13:19:41    阅读次数:66
linux 性能优化之CPU性能(2)
如何迅速分析出系统CPU的瓶颈在哪里? 想分析处理CPU性能问题, 首先我们需要了解CPU性能指标. CPU性能指标 CPU使用率 用户CPU使用率, 包括用户态(user)和低优先级用户态(nice). 该指标过高说明应用程序比较繁忙. 系统CPU使用率, CPU在内核态运行的时间百分比(不含中断 ...
分类:系统相关   时间:2020-06-08 00:50:47    阅读次数:105
linux中断处理函数
1) 根据中断的来源可分为内部中断和外部中断,内部中断的中断源来自于CPU内部(软件中断指令、溢出、除法错误等),例如操作系统从用户态切换到内核态需要借助CPU内部的软件中断,外部中断的中断源来自于CPU外部,由外设触发。 2) 根据中断是否可以被屏蔽,中断可分为可屏蔽中断和不可屏蔽中断,可屏蔽中断 ...
分类:系统相关   时间:2020-06-04 01:22:58    阅读次数:104
(二)进程间通信方式
1 概述 linux常见的五大进程间通信方式包括:共享内存、管道、消息队列、信号量、Socket。 2 共享内存 定义:将同一块物理内存映射到不同的进程的虚拟地址空间中,实现不同进程间对同一资源的共享。 特定:(1)不用从用户态到内核态的频繁切换和拷贝数据,直接从内存中读取就可以。 (2)共享内存是 ...
分类:系统相关   时间:2020-05-28 01:02:42    阅读次数:79
Golang源码学习:调度逻辑(四)系统调用
Linux系统调用 概念:系统调用为用户态进程提供了硬件的抽象接口。并且是用户空间访问内核的唯一手段,除异常和陷入外,它们是内核唯一的合法入口。保证系统的安全和稳定。 调用号:在Linux中,每个系统调用被赋予一个独一无二的系统调用号。当用户空间的进程执行一个系统调用时,会使用调用号指明系统调用。 ...
分类:其他好文   时间:2020-05-28 00:28:57    阅读次数:55
系统调用fork()在powerpc上的源码分析
总结一句话:系统调用的本质,通过sc指令触发异常,完成用户态到内核的转换。 展开一些:应用程序调用fork(),fork()是一个glibc函数,该函数的最底层调用sc指令,触发cpu异常,从而完成从用户态到内核态的切换, 内核:在异常处理中完成fork()的内核态处理,然后通过rfi指令返回到用户 ...
分类:其他好文   时间:2020-05-27 01:21:00    阅读次数:91
线程池
线程模型分类: 用户级线程(User Level Thread,ULT) 用户程序实现,不依赖操作系统核心,应用提供创建、同步、调度和管理线程函数来控制用汉语线程。不需要用户态/内核态切换,速度快。内核对UTL无感知,线程阻塞则进程(包括它的所有线程)阻塞。 内核级线程(KLT) 系统内核管理线程, ...
分类:编程语言   时间:2020-05-25 16:00:07    阅读次数:62
深入理解系统调用
1.系统调用的概念 用户态与内核态: 32 位 Linux 进程地址空间: 系统调?概述: Linux的系统调?: 2.环境准备 编译选项: 编译内核并运行:由于还未挂载根文件系统,因此出现kernel panic。 制作根文件系统: 配置编译选项: 编写init脚本: 打包根文件系统镜像: fin ...
分类:其他好文   时间:2020-05-24 21:09:33    阅读次数:78
1022条   上一页 1 ... 3 4 5 6 7 ... 103 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!