从Oracle11.2开始,ASM不仅是一个磁盘组,他还提供了了一个卷管理器,称为ADVM(asm dynamic volume manager)。ADVM向用户提供卷管理服务,并提供标准的磁盘设备驱动程序。利用ADVM,可以在卷组中创建一个或多个卷,每个卷对应操作系统中的一个设备文件,这些卷是可以 ...
分类:
其他好文 时间:
2019-11-05 17:09:29
阅读次数:
123
一、字符设备结构体 字符设备驱动、块设备驱动和网络设备驱动作为linux内核三大驱动设备,字符设备主要完成字节的读写操作,常见的应用有鼠标、键盘等,结构体形式如下所示: ①、cdev结构体中的dev_t表示32位的设备号,12位为主设备号,20位为次设备号,可通过宏定义MAJOR(dev_t dev ...
分类:
系统相关 时间:
2019-11-03 12:27:06
阅读次数:
86
启动流程: 1.计算机加电 2.blos开始运行 3.blos读取cmos存储器中的参数,选择启动设备 4.从启动设备上读取第一个扇区的内容(MBR主引导记录,512字节钱446为引导信息后,64为分区信息,最后两个为标位) 5.根据分区信息读入boot looder 其同装载模块启动操作系统 6. ...
分类:
其他好文 时间:
2019-10-30 22:56:09
阅读次数:
124
1.1 设备 执行I/O操作的硬件设备,例如鼠标和键盘。 1.2 设备控制器 设备与主机通过插头连接,插座连接着设备控制器。 设备控制器是类似于CPU的智能电子元件,特定的设备控制器控制特定类型的I/O设备。 1.3 设备适配器 设备适配器由设备控制器与其他协助控制设备的硬件(例如显存)组成,如网络 ...
分类:
其他好文 时间:
2019-10-29 22:01:40
阅读次数:
277
内核一般通过jiffies来获取当前时间,该数值表示的是最近一次系统启动到当前的时间间隔,它和设备驱动程序无关,因为它的声明期只限于系统的运行期;但是驱动程序可以用jiffies来计算不同事件之间的间隔;通常,利用jiffies值来测量时间间隔已经足够了,如果要测量更短的时间差,只能使用处理器特定的 ...
分类:
系统相关 时间:
2019-10-29 20:06:38
阅读次数:
220
自旋锁可以再不能休眠的代码中使用,比如中断处理例程;在正确使用的情况下,自旋锁通常可以提供比信号量更高的性能; 一个自旋锁是一个互斥设备,它只能由两个值,锁定和解锁;通常实现为某个整数值中的单个位;希望获得特定锁的代码测试相关位,如果锁可用,则锁定位被设置,而嗲吗继续进入临界区;相反,如果锁被其他人 ...
分类:
系统相关 时间:
2019-10-29 20:05:13
阅读次数:
128
使用非阻塞IO的应用程序经常使用select,poll,epoll系统调用;它们的功能本质上是一样的:都允许进程决定是否可以对一个或者多个打开的文件做非阻塞的读取或者写入;这些电泳也会阻塞进程,直到给定的文件描述符中的任何一个可读取或者写入;因此,它们常常用于那些需要使用多个输入或者输出流而又不会阻 ...
分类:
系统相关 时间:
2019-10-29 20:01:01
阅读次数:
110
读取-复制-更新(read-copy-update,RCU)是一种高级的互斥机制,在正确的条件下,可以获得高的性能; RCU对它保护的数据结构做了一些限定,它针对经常发生读而很少发生写的情况做了优化,被保护的资源应该通过指针访问,而对这些资源的引用必须仅由原子代码拥有,在RCU保护的代码范围内不能进 ...
分类:
系统相关 时间:
2019-10-29 20:00:48
阅读次数:
175
当一个进程被置入休眠时,它会被标记为一种特殊状态,并从调度器的运行队列中移走;直到某些情况下修改了这个状态,进程才会在任意cpu上调度,即运行该进程;休眠中的进程会被搁置在一边,等待将来的某个时间发生; 为了将进程以一种安全方式进入休眠,需要牢记下面的规则: 第一条规则,永远不要在原子上下文中进入休 ...
分类:
系统相关 时间:
2019-10-29 19:59:45
阅读次数:
159
当要保护的资源很小,很简单,会频繁的被访问而且写入访问很少的且必须快速时(即读不允许让写饥饿),就可以使用顺序锁(seqlock);从本质上讲,顺序锁会允许读取者对资源的自由访问,但需要读取者检查是否和写入者发生冲突,当这种冲突发生时,就需要重试对资源的访问; 顺序锁通常不能用于保护包含指针的数据结 ...
分类:
系统相关 时间:
2019-10-29 19:56:42
阅读次数:
105