你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

自制简单OS(仅任务调度) 精华  

[复制链接]
QianFan 发布时间:2015-6-28 15:36
阅读主题, 点击返回1楼
收藏 8 评论93 发布时间:2015-6-28 15:36
93个回答
qscvhu 回答时间:2015-6-29 08:18:54
谢谢分享
jiaswang 回答时间:2015-6-29 08:51:25
感谢分享~!
沐紫 回答时间:2015-6-29 09:04:07
谢谢
黑溱郎 回答时间:2015-6-29 09:07:31
感谢楼主分享,关注学习一下。
stary666 回答时间:2015-6-29 09:20:06
学习,,,,,,,,,,,
党国特派员 回答时间:2015-6-29 09:26:37
强大,不错。。。 blank.png blank1.png blank2.png blank3.png blank4.png blank5.png blank6.png blank7.png blank8.png blank9.png
Mandelbrot_Set 回答时间:2015-6-29 09:54:24
已拜读楼主源码,很必须点赞!
Mandelbrot_Set 回答时间:2015-6-29 09:57:46
问下taskDelete支持删除当前任务自己id吗?
小蚂蚁快溜跑 回答时间:2015-6-29 10:01:06
QianFan 回答时间:2015-6-29 10:02:51
本帖最后由 QianFan 于 2015-6-29 10:05 编辑
Mandelbrot_Set 发表于 2015-6-29 09:57
问下taskDelete支持删除当前任务自己id吗?

如果是第一个版本的话,可以传递curPid给taskDelete删除自己。但是第一个版本删除自己之后,并不能实时的进行新的任务调度。在删除之后还占用时间片,直到Systick异常。

昨晚又更新了一次,在删除自己之后立即进行任务调度,可以支持了删除自己,不过删除自己的函数名是taskDeleteSelf。代码给你看看。还请多多指点啊。

  1. int taskDeleteSelf(void)
  2. {
  3.         int rev = taskDelete(curPid);
  4.         if(rev) //delete self has error
  5.                 return rev;
  6.        
  7.         //delete self and free memory successful
  8.         updateNextTask();
  9.         swTask();
  10.        
  11.         return 0;
  12. }
复制代码


QSys.rar

下载

854.78 KB, 下载次数: 20

更新版本

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版