- 博客(4)
- 收藏
- 关注
原创 IMX6ULL--浅谈Linux阻塞和非阻塞(上)
阻塞式IO会将线程挂起,直到设备资源可以获取为止,当资源可用的时候,唤醒线程。阻塞最大的好处就是当设备文件不可操作时就会进入休眠态,可以让出CPU资源。:线程不会挂起,要么一直轮询等待,要么直接放弃。应用程序默认使用的是阻塞方式打开,想要使用非阻塞方式打开时,需要在调用open函数时加上一个O_NONBLOCK下面是轮询方式:当然在非阻塞的情况下,会有超时处理机制。
2024-01-14 18:53:39
357
1
原创 IMX6ULL -- 浅谈Linux中断及驱动开发(上)
每一个中断都有一个中断号,操作系统可以通过中断号来区分中断,Linux的中断号可以在终端输入"cat /proc/interrupts"命令查看。
2023-12-14 15:22:08
511
1
原创 FreeRTOS学习——列表与列表项
列表与列表项是FreeRTOS中重要的一部分,它可以反映任务中的一些基本信息。 列表的理解比较难,尤其是在列表和列表项进行一个相互指向时会比较难,我这里会详细讲解。 列表的全部东西都是在list.c 和 list.h 中,其实列表也是一种数据结构,它与链表相似,但又比链表拥有更多的内容,我们通过与链表的对比来对列表和列表项进行一个了解。 在list.h 中定义了一个结构体用来记录列表 列表 typedef struct xLIST { listFIRST_LIST_INTEGRITY_CHECK
2022-03-21 14:40:03
897
1
原创 FreeRTOS学习——时间片调度
第一次发布博客,一些标签注释啥的还是没有那么好用,会在今后的日子里写出更多好的博客。 在RTOS中时间片调度怎么做呢?很简单一个例子,就是两个同等级别的人而已,他们都拥有一个相同大小的办公室,这个办公室就是我们这里说的时间片,当一个任务在它的这个时间片里完成以后,便会将CPU交给下一个相同优先级别的任务,让他来完成任务。 时间片是由 configTICK_RATE_HZ 这个宏定义决定的. 在平常设置为1000 表示 时间片的长度为1/1000 S 相当于1ms. 在这里我们重点要知道,我们可能在我们
2022-03-20 17:53:38
1692
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人