RSEG是段选择指令,要想明白它的意思就要了解段的意思。段是程序代码或数据对象的存储单位。程序代码放到代码段,数据对象放到数据段。段分两种,一是绝对段,一是再定位段。绝对段在汇编语言中指定,在用L51联接的时候,地址不会改变。用于如访问一个固定存储器的i/o,或提供中断向量的入口地址。而再定位段的地 ...
分类:
编程语言 时间:
2016-06-07 14:36:05
阅读次数:
150
系统调用:应用程序主动向操作系统发出的服务请求。(异步或同步) 异常:非法指令或其他原因导致当前指令执行失败后的处理请求。(同步) 中断:来自硬件设备的处理请求。(异步) 中断处理机制: 1.CPU初始化 中断使能, 即设置不同中断所对应的处理过程。 2.硬件:设置中断标志,一句中断向量调用相应中断 ...
分类:
其他好文 时间:
2016-05-22 10:47:54
阅读次数:
196
分享一个最近丢了手机心塞到爆炸的我,现在穷的只剩下满脑子的智慧了,好了,我要开始学习了.
首先,搭建一个linux0.11的系统环境,贴出结果图.
从开机加电到执行main函数之前的过程.
1. 启动BIOS,准备实模式下的中断向量表和中断服务程序;
2. 从启动盘加载操作系统程序到内存,加载操作系统程序的工作就是利用第一步中断服务程序实现的;
3. 为执行32位的main函数做过渡工...
分类:
系统相关 时间:
2016-05-13 03:00:59
阅读次数:
270
Stm32的bootloader和App的编写注意事项
1、 怎么分配bootloader和app的空间
2、 怎么得到数据和写入flash
3、 怎么从bootloader跳转到app
4、 怎么设置App的中断向量
5、 App中怎么生成bin文件
6、程序执行的流程
1、怎么分配bootloader和app的空间
因为我用的是stm32f103c8t6,它的...
分类:
移动开发 时间:
2016-05-12 14:30:05
阅读次数:
328
因为之前写个stm32的IAP升级程序,所以我总结了做IAP升级的三个主要的难点:
1、如何设置中断向量,也就是说中断向量的重定向
2、如何配置程序的起始地址
3、如何从IAP跳转到APP程序
4、使用库函数要注意的地方(防止被坑)
说文章的时候我已经完成了一个最简单的IAP升级程序,可以通过串口接收bin文件写入到flash里面,然后再运行。
1、如何设置中断向量,也就是说中断向量的...
分类:
移动开发 时间:
2016-05-07 10:29:31
阅读次数:
1204
Linux信号机制Linux信号机制
一管理层次及结构
1 数据结构
11 中断向量表的模拟
12 中断请求寄存器的模拟
二 信号的安装
1 概述
2 代码分析
3 其它函数
三信号发送
1 kill函数和sigqueue
2 代码分析
四响应信号
一、管理层次及结构1.1 数据结构信号机制是在软件层次上堆中断机制的一种模拟,也就是说信号是一种代码异步执行的方式。故而信号也有类似于中断管理的相关软件...
分类:
系统相关 时间:
2016-04-22 19:33:29
阅读次数:
195
Cortex M3 NVIC与中断控制
宗旨:技术的学习是有限的,分享的精神的无限的。
一、NVIC概览 ——
嵌套中断向量表控制器
NVIC 的寄存器以存储器映射的方式来访问,除了包含控制寄存器和中断处理的控制逻辑之外, NVIC 还包含了 MPU、 SysTick 定时器以及调试控制相关的寄存器。
NVIC 共支持 1 至 240 个外部中断输入(通常外...
分类:
其他好文 时间:
2016-04-10 14:51:11
阅读次数:
432
主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能 ...
分类:
其他好文 时间:
2016-04-05 19:28:05
阅读次数:
119
预备知识
内核态
用户态
为什么要划分系统级别?
如何区分内核和用户态? cs:eip
寄存器上下文
上下文切换
系统调用号
中断向量
调度时机
系统调用过程中一定发生中断, 在系统调用执行过程中可能有进程的切换.系统调用分类进程控制load
execute
end, abort
create process (for example, fork on Unix-like systems, or N...
分类:
其他好文 时间:
2016-03-28 00:14:43
阅读次数:
383
函数调用 看这样一段代码: 其中用到了printf函数,函数从标准C库中调用,实际上是进入到内核态调用write()函数。 系统调用 应用程序通过系统调用接口进入内核,首先通过中断向量表转移到系统调用表,每一个系统调用都有对应的编号,根据编号实现相应的操作并返回。 系统调用与函数调用的区别 系统调用 ...
分类:
其他好文 时间:
2016-03-26 23:54:33
阅读次数:
229