Linux点滴
摘要:1、系统调用: 操作系统的主要功能是为应用程序的运行创建良好的环境,为了达到这个目的,内核提供一系列具备预定功能的多内核函数,通过一组称为系统调用(system call)的接口呈现给用户。系统调用把应用程序的请求传给内核,调用相应的的内核函数完成所需的处理,将处理结果返回给应用程序,如果没有系统调用和内核函数,用户将不能编写大型应用程序。 系统调用类型包括:进程控制、文件系统控制、系统控制、内存管理、网络管理、socket控制、用户管理、进程间通信。 进程控制:fork 、clone 、execve 、exit 、getpgid、waipid。 文件系统控制:fcntl、open、c...
阅读全文
从Cortex-M3的MSP 和PSP谈Linux能否在中断中使用Sleep
摘要:1、Cortex-M3 的PSP和MSP 曾经在STM32上使用过RT thread和uC/OS,对于任务切换代码一直是一知半解,没有自己手动写出来过,对于任务切换后的ORR LR, LR, #0x04; Ensure exception return uses process stack也不是很理解,一次偶然的机会,遇到网上有人问这个问题,才去深入研究一下。Cortex‐M3 拥有两个堆栈指针,然而它们是banked,因此任一时刻只能使用其中的一个: 主堆栈指针(MSP):复位后缺省使用的堆栈指针,用于操作系统内核以及异常处理例程(包括中断服务例程)。 进程堆栈指针(PSP):由用户...
阅读全文