Soft UART implementation on RPI 3B
2018-8-16
BCM2837 Interrupt Controllersirq mapdrivers/irqchip/irq-bcm2835.cdivided into 3 banks. 0-31 bank 0 => Basic Interrupt enable register. offset 0x218, b
使用iconv实现文件编码转换
2018-8-16
在ubuntu下打开一个gb2312编码的文本文件乱码。使用下面的命令,将其转换为utf8编码:$ iconv -f gb2312 -t utf8 RegExp.txt -o regexp.txt选项-f 输入格式-t 输出格式-l 列出支持的字符集编码-c omit输出中的非法字符-o 指定输出文
正则表达式1
2018-8-16
完整的正则表达式由两种字符构成。特殊字符(special characters)称为元字符(metacharacters)。其它为字面字符(literal),或者普通文本字符(normal text characters)。1 Egrep元字符1.1 行的起始和结束^匹配行的开头。$匹配行的结尾。1
sed 1
2018-8-17
sed is a stream editor。它对input stream执行基本的文本转换。输入流可以是文件或者pipeline。2 Running sed2.1 Overview通常,sed向下面这样被调用sed SCRIPT INTPUTFILE ...例如sed 's/hello/world
sed 2: addresses
2018-8-17
4 Addresses: selecting lines4.1 Addresses overview地址用来指定命令在哪些行执行。没有指定地址的话,则命令应用到所有行。用行号指定, 地址行号从1开始。sed '144s/hello/world' 通过正则表达式匹配来指定,如下apple是匹配行的正则
sed 3: Regular expressions: selecting text
2018-8-17
5 Regular Expressions: selecting text5.1 overview5.2 Basic (BRE) and extended (ERE) regular expressionsed 默认是BRE,当使用-E, -r, --regexp-extended选项来开启ERE语
sed 4: Advanced sed: cycles and buffers
2018-8-17
6 Advanced sed: cycles and buffers6.1 How sed Workssed 维护两个data bufferactive pattern sapceauxiliary hold spacesed从输入读取一行,移除结尾的newline,将其放入pattern spac
Process Management & Scheduling
2018-8-19
Process Descriptor and the Task Structure进程描述符是struct task_struct类型,定义在,进程描述符包含了进程的所有信息。Allocating the Process Descriptortask_struct结构使
Kernel Synchronization 1: atomic operation
2018-8-20
Causes of Concurrency内核中,下面的东西会导致并发中断软中断和任务队列内核抢占Sleeping and synchronization with user-spaceSymmetrical multiprocessingAtomic Operations在很多体系架构中,对齐的
Kernel Synchronization 2: spin lock
2018-8-20
spin lock自旋锁,和架构相关,使用汇编实现。架构相关的代码定义在
,但是使用的接口定义在在单处理器上,实际上不需要锁,只需要禁止内核抢占。注意:Spin Locks are not recursive获取一个你已经获取的锁,你
Copyright © linuxdev.cc 2017-2024. Some Rights Reserved.