1,内核以实现总线,只需写驱动和设备的信息; 2,设备链表、驱动链表;总线完成链表匹配(name);驱动执行probe函数,向上层提供open、read、write接口需要在probe函数中注册字符设备驱动;在probe函数中根据设备信息操作硬件;ioremap物理地址映射成虚拟地址操作硬件;总线编 ...
分类:
其他好文 时间:
2019-08-24 19:10:20
阅读次数:
211
一、共享内存shm 1 概念:多个进程的地址空间都映射到同一块物理内存,这样多个进程都能看到这块物理内存,实现进程间通信,而且不需要数据的拷贝,所以速度最快。 二、内存映射mmap 1 前言:先介绍一下普通的读写文件的原理,进程调用read/write系统调用后会陷入内核,内核开始读写文件,假设内核 ...
分类:
系统相关 时间:
2019-08-21 15:10:01
阅读次数:
122
前言 LD_PRELOAD和ld wrap都能实现不修改原始代码,替换指定函数的实现。通常我们会使用这些方法,替换如malloc)()/free()、read()/write()等函数,并在替换函数中做一些记录,以便能分析程序执行时的内存分配和IO情况。这些函数一般叫包裹函数。 LD_PRELAD ...
分类:
其他好文 时间:
2019-08-17 12:44:47
阅读次数:
108
以下大部分都在STANDBY执行,主库执行(两次)的会提示 【STANDBY read write方式打开测试】检查standby状态SQL> SELECT NAME,DATABASE_ROLE,OPEN_MODE,SWITCHOVER_STATUS FROM V$DATABASE; NAME DA ...
分类:
数据库 时间:
2019-08-15 13:05:05
阅读次数:
132
并发概念 I/O操作 I/O操作 相对内存来说 输入Input输出Output 输入是怎么输入 :键盘\input\read\recv 输出是怎么输出 :显示器 打印机 播放音乐\print\write\send 文件操作 :read write 网络操作 :send recv recvfrom 函 ...
分类:
编程语言 时间:
2019-08-13 22:58:17
阅读次数:
233
设备文件一切皆文件:open(),read(),write(),close()设备类型:字符文件:char,c,存取单位字符,键盘块设备:block,b,存取单位块,磁盘设备文件:/dev/下关联至一个设备驱动程序,进而能够与之对应的硬件设备进行通信设备号码:主设备号(标识设备类型),次设备号(标识同一类型下的不同设备)硬盘接口类型:并行:IDE,SCSI串口:SATA,SAS,USB复制设备文件
分类:
系统相关 时间:
2019-08-13 17:12:15
阅读次数:
112
建立逻辑路径 create or replace directory dumpdir as 'c:\'; grant read,write on directory dumpdir to scott; 倒入/出 expdp newdr/123456@hncrm directory=test dump ...
分类:
数据库 时间:
2019-07-01 10:56:23
阅读次数:
280
第一,先探讨一个问题,一个写IO的流程,什么样就算完成一次IO操作了。 "Disk Caches,磁盘高速缓存。 将磁盘上的数据缓存在内存中,加速文件的读写。实际上,在一般情况下,read/write是只跟缓存打交道的。(当然,存在特殊情况。下面会说到。) read就直接从缓存读数据。如果要读的数据 ...
分类:
其他好文 时间:
2019-06-27 12:25:37
阅读次数:
149
csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据。我们用python处理.csv文件时,发现用pandas工具包比csv工具包要方便很多,下面介绍一下一些基本的操作,如读写(read, write)和切片(slice)。 写(write)操作: import ...
分类:
编程语言 时间:
2019-06-24 00:58:25
阅读次数:
148
内存映射文件和传统的I/o过程的区别 传统IO:块设备文件,磁盘文件 系统调用->页高速缓存->分配新页->磁盘->页高速缓存->用户进程空间的缓冲区 系统调用 read(),write() 系统调用read()将阻塞调用进程,知道数据被拷贝进用户态地址空间。规范模式但wirte()不同,它在数据被 ...
分类:
其他好文 时间:
2019-06-16 20:14:55
阅读次数:
131