![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
操作系统原理
文章平均质量分 67
linux操作系统、嵌入式操作系统
拾牙慧者
会点c++、python;
展开
-
关于并发概念的一些笔记
1、基于锁的并发数据结构1、并发计数器2、懒惰计数器3、并发链表4、并发队列5、并发散列表总结2、条件变量使用(POSIX)生产者/消费者 (有界缓冲区问题)覆盖条件扩展3、信号量使用二值信号量(锁)0值信号量(条件变量)生产者消费者问题读写锁哲学家就餐问题使用锁+条件变量实现信号量扩展4、并发问题总结1、预防循环等待2、使用非抢占锁3、完全避免互斥,使用CAS4、调度避免死锁5、检测死锁并恢复5、事件并发时间并发与线程并发的区别状态管理问题缺点原创 2022-05-22 21:19:31 · 433 阅读 · 0 评论 -
零拷贝机制在文件传输中的使用手法
零拷贝是一种高效的数据传输机制,在追求低延迟的传输场景中经常使用。如果服务端要提供文件传输的功能,最简单的方式是:1、将磁盘上的文件读取出来2、通过网络协议将内容发送给客户端传统IO的工作方式是...原创 2022-02-26 14:46:06 · 3491 阅读 · 0 评论 -
DSP关于存储器读写、IO读写时序图的注意点
这里的存储器图不涉及插入等待周期。IO设备的图可以自行减去插入等待周期,然后观察。存储器读读写存储器写写读I/O设备读写操作原创 2021-01-20 13:43:18 · 1693 阅读 · 0 评论 -
Linux内核逻辑结构
Linux内核的结构linux内核从逻辑上可以分为5个部分:1、进程调度进程调度控制进程对CPU的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的程序。可运行进程实际上是仅等待CPU资源的进程,如果某个进程在等待其他资源,则该进程是不可运行进程。linux使用了基于优先级的进程调度算法选择新的运行进程。2、进程间通信IPC(Intre-Process Communication)包括FIFO、管道等机制以及System V IPC的共享内存(shm)、消息队列(msg)和信号灯(sem原创 2021-01-13 15:53:27 · 482 阅读 · 0 评论 -
Linux驱动程序框架以及概述
设备驱动程序功能:1、对设备初始化和释放2、把数据从内核传送到硬件和从硬件读取数据3、读取应用程序传送给设备文件的数据和回送应用程序请求的数据4、检测和处理设备出现的错误访问特定硬件:访问特定硬件就是访问物理地址(如处理器内设备的寄存器、外设的地址映射)。然而由于MMU的内存映射以及对操作系统的保护,运行在用户态的应用程序一般不能直接访问硬件地址。因此需要驱动程序作为应用程序和访问硬件之间的媒介。驱动程序三种基本类型1、字符设备(Char Device)2、块设备(Block Device原创 2021-01-13 15:52:54 · 5481 阅读 · 0 评论 -
GDB与远程(交叉)GDB调试
GDB提供的功能1、启动的程序,可以按照自定义的要求运行程序2、可以让被调试的程序在指定的断点处停住(断点可以是条件表达式)3、当程序被停住时,可以检查这个时候程序中发生的事4、动态地改变程序的运行环境。远程(交叉)GDB调试调试桩(调试代理):在目标机上驻留有一小段代码。调试桩作用:1、在目标机上视线由主机上的调试器发送过来的调试命令。如:读写内存、读写寄存器、设置断点以及运行被调试程序。2、向主机调试器报告目标机上发生的异常事件。如:断点命中、除0等程序错误。典型交叉调试会话步骤1原创 2021-01-12 15:16:09 · 478 阅读 · 0 评论 -
GNU工具以及GCC对C语言程序的处理流程
GCC是一族工具的集合,包含预处理器、编译器、汇编器、链接器。对于默认的文件名,GCC可以自动选择工具自动完成文件处理过程。从C语言的源程序道可执行文件,实质上是依靠GCC调用一系列工具完成的。GCC默认处理的文件文件类型扩展名文件说明文本文件*.cC源文件文本文件*.cC源文件文本文件*.cppC++源文件文本文件*.i预处理后的C源文件文本文件*.ii预处理后的C++源文件文本文件*.s汇编语言文本文件*.h头原创 2021-01-12 14:44:23 · 292 阅读 · 0 评论 -
DMA三种方式以及DMA特点
DMA三种方式:数据块传送方式、周期挪用方式、交替访存方式数据块传送方式:在I/O接口电路中设置一个比较大的数据缓冲区,一般能存放一个数据块,I/O接口电路与内存之间的数据交换以数据块为单位。总线仲裁器判定究竟是DMA控制器还是CPU能获得总线的使用权。周期挪用方式:当I/O接口没有DMA请求时,CPU按程序要求访问内存;一旦I/P接口有DMA请求,则I/O接口挪用一个或几个周期。缺点是:数据输入或庶出过程中实际占用了CPU时间。交替访存方式:CPU与DMA控制器交替访问内存。不需要总线使用权的申请、原创 2021-01-10 22:58:55 · 39606 阅读 · 0 评论 -
【DSP复习主要知识点】(大概)
1、数字系统对比模拟系统数字化的优点:1.高度的程控能力与灵活性2、更高的精度3、可靠性与可重复性得到了改善4、大规模集成5、接口方便6、灵活性好7、保密性好8、特殊应用(只有数字能做):信息无失真压缩、线性相位滤波器、软件无线电技术模拟与数字各有所长:1、实时性模拟:除了电路引入的延时外,处理是实时的数字:取决于处理器的速度2、高频信号的处理模拟:可以处理包括微波毫米波乃至光波信号数字:按照奈奎斯特准则的要求,受S/H、A/D 和处理速度的限制3、模拟与数字信号转换原创 2021-01-06 16:15:09 · 8257 阅读 · 1 评论 -
HDU嵌入式实验课程大作业分析报告
目录作业要求设计原理与思路扩展任务说明课程感受友情链接工程链接作业要求体能测试记录仪设计基于课程发放的实验板,设计一个带有计时和数据采集功能的体能测试记录仪。基本设计内容功能1:对应1000米体测场景,使用充电宝供电,提供计时功能,按K5清零并开始计时,K6停止计时。计时过程使用数码管显示当前计时,K2显示分秒,K3显示秒、百分秒,计时结束后保持显示结果。功能2∶计时完成后自动将测试时间(RTC时钟的年月日时分秒)和测试时长(分、秒、百分秒)记录到外置FLASH存储器。最多保存100次记录数据,原创 2021-01-02 16:34:51 · 1886 阅读 · 8 评论 -
μC/OS-Ⅱ 操作系统内核知识
目录μC/OS-Ⅱ任务调度1.任务控制块2.任务管理3.任务状态μC/OS-Ⅱ时间管理μC/OS-Ⅱ内存管理内存控制块MCBμC/OS-Ⅱ任务通信1.事件2.事件控制块ECB3.信号量操作系统内核:在多任务系统中,提供任务调度与切换、中断服务操作系统内核为每个任务分配CPU时间,并且负责任务之间的通信。嵌入式操作系统核心内容:1、进程调度2、进程通信3、内存管理4、设备管理嵌入式操作系统的结构:μC/OS-Ⅱ任务调度用户在建立操作系统的时候需要初始化操作系统。任务调度的时候需要开.原创 2020-12-18 18:47:08 · 1232 阅读 · 0 评论 -
uC/OS-II OS_TASK.C中有关任务管理的函数
函数大致用途OS_TASK.C是uC/OS-II有关任务管理的文件,它定义了一些函数:建立任务、删除任务、改变任务的优先级、挂起和恢复任务,以及获取有关任务的信息。函数用途OSTaskCreate()建立任务OSTaskCreateExt()扩展建立任务OSTaskStkChk()堆栈检验OSTaskDel()删除任务OSTaskDelReq()请求删除任务OSTaskChangePrio()改变任务的优先级OSTaskSuspend(原创 2020-12-15 22:36:15 · 647 阅读 · 0 评论 -
【嵌入式系统复习】嵌入式网络与协议栈
主要 知识点:开放式系统互连模型总线通信的报文组形式以及传递方式网络分配与调度嵌入式TCP/IP蓝牙技术原创 2020-12-01 12:21:17 · 944 阅读 · 0 评论 -
【嵌入式系统】STM32串口通信的四种方法(基于RTOS)
目录1、串行通信的基本参数2、轮询方式代码效果3、中断方式代码效果4、中断加上时间戳方式代码及效果5、DMA空闲中断方式接收数据1、串行通信的基本参数串行端口的通信方式是将字节拆分成一个接一个的位再传输出去,接收方再将此一个一个的位组合成原来的字符,如此形成一个字节的完整传输,在数据传输时,应在通信端口的初始化时设置几个通信参数。1)波特率,即传送数据的速度。波特率的意思就是在一秒中可以传输的数据位数,单位是bps。如果采用波特率4800bps进行传输,那么每秒可以传输600个byte。2)数.原创 2020-11-13 22:14:46 · 2819 阅读 · 1 评论 -
【嵌入式系统】STM32配置FreeRTOS以及利用多线程完成流水灯、按键、蜂鸣器、数码管工作
1、利用STM32CubeMX配置FreeRTOS2、利用线程完成流水灯、按键、蜂鸣器工作3、关于FreeRTOS的注意事项注意点:1、每个任务函数中都要有延时delay2、osdelay使当前任务挂起,当延时结束,又唤醒当前任务,相当于释放了cpu。而HALdelay在延时中还是会占用cpu资源的。3、时间戳可以在不使用delay的情况下得到当前时间4、os函数都需要在任务函数中调用...原创 2020-10-30 18:01:15 · 6458 阅读 · 3 评论