操作系统
文章平均质量分 77
xp_super
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
浅析中断方式与轮询方式
中断的基本概念程序中断通常简称中断,是指CPU 在正常运行程序的过程中,由于预选安排或发生了各种随机的内部或外部事件,使CPU 中断正在运行的程序,而转到为相应的服务程序去处理,这个过程称为程序中断。二、80x86 微处理器的中断 80x86 微处理器的中断类型一般分为2 类,即由于执行某些指令引起的软中断和由处理器以外其他控制电路发出中断请求信号引起的硬中断。 CPU 要从主程序转载 2012-09-21 09:30:59 · 567 阅读 · 0 评论 -
struct pt_regs 中存的内容
23 /* this struct defines the way the registers are stored on the 24 stack during a system call. */25 26 struct pt_regs {27 long ebx;28 long ecx;29 long edx;30转载 2012-09-21 23:36:21 · 5246 阅读 · 0 评论 -
关于linux内核中多进程(线程)间同步和互斥
Linux设备驱动中必须解决的一个问题是多个进程对共享资源的并发访问,并发访问会导致竞态,linux提供了多种解决竞态问题的方式,这些方式适合不同的应用场景。Linux内核是多进程、多线程的操作系统,它提供了相当完整的内核同步方法。内核同步方法列表如下:中断屏蔽原子操作自旋锁读写自旋锁顺序锁信号量读写信号量BKL(大内核锁)Seq锁一、并发与竞态:转载 2012-10-15 18:20:24 · 876 阅读 · 0 评论 -
vm_area_struct
Linux内核中,关于虚存管理的最基本的管理单元应该是struct vm_area_struct了,它描述的是一段连续的、具有相同访问属性的虚存空间,该虚存空间的大小为物理内存页面的整数倍。下面是struct vm_area_struct结构体的定义: QUOTE:/** This struct defines a memory VMM me转载 2012-11-06 10:19:08 · 483 阅读 · 0 评论 -
内存映射
1.地址类型用户虚拟地址物理地址总线地址内核逻辑地址 kmalloc()分配的内存区域内核虚拟地址 vmalloc()分配的内存区域在中,宏__pa()/__va()可以进行逻辑地址和物理地址之间的转换。但只对低端内存页有效。 2.物理地址和页PAGE_SIZE PAGE_SHIFT 3.高端与低端原创 2012-12-03 23:02:11 · 563 阅读 · 0 评论 -
内存管理
1.在linux系统中,进程的4GB内存空间一般分为用户空间(0~3)G和内核空间(3~4)G.内核空间中,从低地址到高地址依次为:物理内存映射区隔离带vmalloc虚拟内存分配器隔离带--------------------------------896M高端内存映射区专用页面映射区保留区2.内存存取2.1 用户空间内存分配函数mall原创 2012-12-03 19:21:48 · 501 阅读 · 0 评论 -
工作队列(workqueue)
项目需要,在驱动模块里用内核计时器timer_list实现了一个状态机。郁闷的是,运行时总报错“Scheduling while atomic”,网上搜了一下:"Scheduling while atomic" indicates that you've tried to sleep somewhere that you shouldn't - like within a spin转载 2012-12-25 14:27:48 · 773 阅读 · 0 评论
分享