12 2024 档案

摘要:poll和select的改进版,在一个程序需要处理数百个文件描述符时很有用 2.6内核引入epoll机制,解决了poll和select的性能问题,并加入了一些新特性 poll和select每次调用都需要所有被监听的文件描述符,内核需要遍历所有的文件描述符,当数量变大时,性能消耗巨大 epoll将监听 阅读全文
posted @ 2024-12-15 16:39 sgqmax 阅读(40) 评论(0) 推荐(0) 编辑
摘要:汇编 存储程序计算机 图灵机 冯诺依曼机 运算器、控制器、存储器、输入和输出设备 CPU由运算器(算术逻辑单元ALU),控制器和寄存器组成 寄存器程序计数器PC,在IA32(x86-32)中是EIP,指示要执行的下一条指令在存储器中的地址 x86-32汇编 通用寄存器 4个数据寄存器EAX,EBX, 阅读全文
posted @ 2024-12-05 13:10 sgqmax 阅读(16) 评论(0) 推荐(0) 编辑
摘要:用户态和内核态 intel x86 CPU有4种不同的执行级别,分别为0,1,2,3 按照intel的设想,内核运行在Ring0级别,驱动运行在Ring1和Ring2级别,应用运行在Ring3级别 linux系统中,只使用了0和3两个级别,分别对应内核态和用户态,使用寄存器CS:EIP的指向范围区分 阅读全文
posted @ 2024-12-05 13:08 sgqmax 阅读(20) 评论(0) 推荐(0) 编辑
摘要:进程描述 操作系统通过进程控制块PCB来描述进程,对应Linux内核数据结构struct task_struct 在Linux3.18.6内核中,定义于include/linux/sched.h#1235 pid和tgid标识进程 state进程状态 stack进程堆栈 CONFIG_SMP在多处理 阅读全文
posted @ 2024-12-05 13:07 sgqmax 阅读(10) 评论(0) 推荐(0) 编辑
摘要:硬中断和软中断 中断有很多种,但都是程序执行过程中的强制性转移,转移到操作系统内核相应的处理程序 除了主动让出CPU外,进程的调度都需要在进程外(内核)进行,这就需要从进程的指令流里切换出来 中断处理程序是与进程无关的内核指令流,起到切出进程指令流的作用 运行完内核代码后,CPU会检测是否需要进程调 阅读全文
posted @ 2024-12-05 13:06 sgqmax 阅读(31) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示