--内容来源于:linux性能优化课程,此处做记录用。 Linux是一个多任务操作系统,它支持远大于cpu数量的任务同时运行,当然,这实际上并不是真的在同时运行,而是因为系统在很短的时间内,将cpu轮流分配给他们,造成多任务同时运行的错觉。 在每个任务运行之前,cpu都需要知道任务从哪里加载,又从哪 ...
分类:
其他好文 时间:
2018-12-07 16:00:40
阅读次数:
200
title: iic框架 tags: ARM date: 2018 11 05 13:44:58 i2c框架 [TOC] 寄存器 主机接收 中断处理 注意 1. 连续读的最后一个字节不响应ack,以用来终止读. 2. 在读写第一个字节的时候,判断是否有ack来判断是否设备存在 写 c if (p_c ...
分类:
其他好文 时间:
2018-11-27 01:20:27
阅读次数:
213
中断处理程序的编写方法和子程序的比较相似,下面是常规的步骤: 1)保存用到的寄存器 2)处理中断 3)恢复用到的寄存器 4)用iret指令返回。 编程处理0号中断(除法错误) 1)编写可以显示"overflow!"的中断处理程序: do0; 2)将do0送入内存0000:2000处; 3)将do0的 ...
分类:
其他好文 时间:
2018-11-12 17:52:00
阅读次数:
149
我们可以用中断类型码,在中断向量表中找到中断处理程序的入口。找到这个入口地址的最终目的是用它设置CS和IP,使CPU执行中断处理程序。用中断类型码找到中断向量,并用它来设置CS和IP,这个工作是由CPU的硬件自动完成的。CPU硬件完成这个工作的过程被称为中断过程。 下面是8086CPU在收到中断信息 ...
分类:
其他好文 时间:
2018-11-12 15:52:15
阅读次数:
195
教材学习内容总结 异常控制流 异常 异常类别: 中断 陷阱 故障 终止 中断处理: 陷阱处理: 故障处理: 终止处理: 进程 上周考试错题总结 错题1: read(fd, buf, 30)执行成功,返回可能不是30的是() A . 读时遇到EOF B . 从终端读文本 C . 读磁盘文件,但没遇到E ...
分类:
其他好文 时间:
2018-11-11 00:59:36
阅读次数:
189
锁 xv6 运行在多处理器上,即计算机上有多个单独执行代码的 CPU。这些 CPU 操作同一片地址空间并分享其中的数据结构;xv6 必须建立一种合作机制防止它们互相干扰。即使是在单个处理器上,xv6 也必须使用某些机制来防止中断处理程序与非中断代码之间互相干扰。xv6 为这两种情况使用了相同的低层概 ...
分类:
其他好文 时间:
2018-11-10 23:53:44
阅读次数:
197
五大内存分区在C++中,内存分成5个区,它们分别是:栈、堆、自由存储区、全局/静态存储区和常量存储区。栈:由编译器自动分配和释放,存放函数的参数值、局部变量的值等。操作方式类似于数据结构中的栈。堆:堆由程序员手动分配和释放,且完全不同于数据结构中的堆,分配方式类似链表。由new/delete 申请和... ...
分类:
编程语言 时间:
2018-11-03 22:00:19
阅读次数:
141
synchronized的功能扩展: 重入锁;ReentrantLock; 其实也就是lock对于synchronized的替代了,要注意的一个点就是你可以锁多个,但是你锁了几个,最后就要解锁几个这个问题; 使用lock.lock()加锁,使用lock.unlock()解锁; 提供中断处理; 使用中 ...
分类:
其他好文 时间:
2018-10-01 23:47:58
阅读次数:
325
1 #include 2 3 typedef unsigned char uchar; 4 typedef unsigned int uint; 5 6 uint flag = 0; //用于定时器计数 7 8 #define LED1 P1_0 9 #define LED2 P1_1 10 #de... ...
分类:
其他好文 时间:
2018-09-26 23:55:39
阅读次数:
148
key_int按键中断实验 实验内容: 通过开发板上的按键中断控制led灯并打印信息。 通过简单事例说明猎户座4412处理器的GIC中断处理的应用,设置key2按键连接的引脚为中断模式,当识别按键被按下时进入相应的中断处理函数 实验目的: 熟悉开发环境的使用 掌握猎户座4412处理器的中断过程及编程 ...
分类:
其他好文 时间:
2018-09-18 22:54:25
阅读次数:
457