Related Articles
SylixOS 进程资源回收机制
SylixOS 中使用 t_reclaim 线程回收进程资源。t_reclaim 线程在系统启动时创建,优先级较低,为 253。线程执行流程非常简单,即接收消息队列值并执行 vprocReclaim() 进行回收,消息队列数据位待回收的线程控制块指针。如下图所示。 vprocReclaim() 执行流程如下: 1)等待所有线程被彻底删除; 2)回收线程全部资源(打开的文件、信号量、时间、定时器等); 3)释放模块资源; 4)回收进程控制块资源 通过调用 __resReclaimReq() ...
僵死状态进程如何处理
Q: 子进程执行完或kill后,处于僵死状态(zombie),如何将其终结? A: 如果子进程退出后,通过ps命令仍能看到其存在,并且它的状态变成Z,则此子进程处于僵死状态,那如何将其正常终止呢? 在 SylixOS 中可以通过调用 wait 或者 waitpid,这样父进程可以获取子进程的退出状态,子进程也能正常终止。 即在程序中增加如下代码: child_pid = wait (&iStatLoc) 或者 waitpid(child_pid, &iStatLoc, 0);
应用线程或者进程如何保证不能被Ctrl+C杀掉?
Q:应用线程或者进程如何保证不能被 Ctrl+C 杀掉? 使用 pthread_safe_np 和 pthread_unsafe_np 可以保证线程进入安全模式,避免被Ctrl+C杀掉。 更多扩展知识: 参考文章:SylixOS 中 CTRL + C 的大致处理流程 参考文章:SHELL 中 CTRL 控制命令 参考文章:如何禁止Contrl+X执行?
如何调试运行中多线程的进程
问:如何调试运行中多线程的进程? 答:通常情况下,我们利用non_stop模式调试程序的时候是采用的一键推送调试,如果遇到正在运行中的多线程进程,我们可以采用attach+non_stop的方式来对其调试。 (1)加入断点后对运行中的程序进行单步调试: (2)attach调试选项:
SylixOS 功能介绍及版本差异
SylixOS功能介绍及版本差异 SylixOS 标准版 SylixOS 标准版是 SylixOS 的基础版本,具备如下功能: 兼容 IEEE 1003(ISO/IEC 9945)操作系统接口规范; 兼容 POSIX 1003.1b(ISO/IEC 9945-1)实时编程标准; 支持国军标 GJB7714-2012 操作系统接口规范; 优秀的实时性能(任务调度与切换算法时间复杂度为 O(1)); 支持无限多任务; 抢占式调度支持 256 个优先级; 支持虚拟进程; ...