小熊派学习

qq62cf40b0240c2
发布于 2022-7-23 11:52
浏览
0收藏

内核开发

任务管理(线程)

基本概念

小熊派学习-鸿蒙开发者社区

任务状态

1.就绪:该任务在就绪列表中,只等待CPU
2.运行:该任务正在执行
3.阻塞:该任务不在就绪列表中。包含任务被挂起,任务被延迟,任务正在等待信号量,读写队列或者等待读写事件等
4.退出态:该任务运行结束,等待系统回收资源

任务状态迁移说明

小熊派学习-鸿蒙开发者社区

实现任务管理

1.创建任务
小熊派学习-鸿蒙开发者社区
2.删除某个任务
小熊派学习-鸿蒙开发者社区
3.任务挂起
小熊派学习-鸿蒙开发者社区
4.任务恢复
小熊派学习-鸿蒙开发者社区

定时器管理开发

软件定时器基本概念

软件定时器是基于系统Tick时钟中断且由软件来模拟的定时器,当经过设定的Tick时钟计数值后会触发用户定义的回调函数。定时精度与系统Tick时钟的周期有关。

软件定时器运作机制

软件定时器使用了系统的一个队列和一个任务资源,软件定时器的触发遵循队列规则,先进先出。定时时间短的定时器总是比定时时间长的靠近队列头,满足优先被触发的准则。

实现软件定时器的创建

小熊派学习-鸿蒙开发者社区

信号量开发

基本概念

信号量是一种实现任务间通信的机制,实现任务之间同步或临界资源的互斥访问。常用于协助一组相互竞争的任务来访问临界资源
小熊派学习-鸿蒙开发者社区

运作机制

小熊派学习-鸿蒙开发者社区
小熊派学习-鸿蒙开发者社区

实现信号量功能

小熊派学习-鸿蒙开发者社区
1.创建信号量
小熊派学习-鸿蒙开发者社区
2.等待信号量
小熊派学习-鸿蒙开发者社区
3.释放信号量
小熊派学习-鸿蒙开发者社区

事件管理

小熊派学习-鸿蒙开发者社区

互斥锁

小熊派学习-鸿蒙开发者社区

1
收藏
回复
举报
回复
    相关推荐