2.2+进程和线程与调度.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Session 2: Testing Windows CE .NET Alan Page, Microsoft There are two primary architectural choices for an OS to handle Priority inversion in a system: Single Level and Fully Nested. In the Fully Nested Mode the OS will walk through all threads blocked and keep boosting each one until the high priority thread can run. This prevents an entire class of deadlocks. Unfortunately it also means an O(n) operation with pre-emption turned off while the scheduler figures out how to get everything unblocked to keep things going. This is a major problem for real-time systems that need deterministic response times. In order to support hard real-time systems Windows CE V3.0 and later switched to using a Single Level handling of priority inversion. That is the OS will boost only one thread to release a block. It is therefore the responsibility of the developer to structure code such that deadlocks are avoided. 2.2 进程和线程与调度 进程 线程 调度 2.2 进程和线程与调度 进程 线程 调度  进程概述 进程(process)定义:是一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。它是系统进行资源分配和调度的一个独立单位。 进程通常由三部分组成:程序、数据集合、进程控制块PCB(Process Control Block) 进程特点: 动态性 独立性 并发行 结构化 进程概述 进程与程序的联系: 程序是构成进程的两个组成部分之一。一个进程的运行目标是执行它对应的程序。 进程与程序的区别: 程序是静态的,进程是动态的。 进程有创建、执行及撤销而消亡的生命周期,程序只是一个文件,存在于某种介质上。 一个程序可对应多个进程,但是一个进程只能对应一个程序。 Windows CE进程 Windows CE(5.0)最多只支持32个进程同时运行。每个进程占据32MB的虚拟地址空间,也被称为一个Slot。 在系统启动的时候,默认会启动四个进程,NK.EXE, FILESYS.EXE, GWES.EXE及DEVICE.EXE。 Windows CE进程 Windows CE的进程也不支持环境变量(Environment Variable)和当前目录。 如果没有明确指明可执行文件的路径,那么Windows CE会按照如下的顺序搜索: 首先查找“\Windows”目录 查找根目录(“\”) OEM所指定的搜索目录(“HKEY_LOCAL_MACHINE\Loader\SystemPath”) 例如:如果MyApp.exe的同一目录中存在MyFile.tex,那么下面的代码都是不正确的。   _wfopen(L”%WINDOWS%\\MyFile.txt, L”w”); _wfopen(L”MyFile.txt”,L”w”); Windows CE进程 一种解决方案 TCHAR szBuf[MAX_PATH]; DWORD dwPathLen; //得到当前程序可执行文件的完整路径 dwPathLen = GetModuleFileName(NULL,szBuf,MAX_PATH); if(!dwPathLen) { return -1; } //除去文件名 while(szBuf[--dwPathLen]!=‘\\’); szB

文档评论(0)

微微 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档