- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
WindowsCE中的服务-深圳职业技术学院精品课程展示.ppt
百度文库 百度文库 项目11:基于Windows CE 5.0的嵌入式Web服务器 (2) 本节课程主要知识点 Windows CE服务程序 重点和难点 重点 Windows CE服务 难点 服务中的网络服务 Windows CE服务程序 Windows CE服务程序 在设备中,经常需要有一些程序从开机就运行,一直运行到设备关闭为止,在整个设备开机期间不会关闭。 这类程序一般是在系统的后台为用户提供一些服务。 这类程序被称为服务(Service)程序。 Service.exe 在Windows CE中,有许多网络服务器都 是通过服务实现的。如文件服务器、FTP服务器、Telnet服务器、打印服务器及HTTP服务器。 服务管理器是由进程Service.exe来实现的,其工作机制与功能与设备管理器Device.exe非常相似。 Device.exe负责加载所有的驱动程序,Service.exe负责加载所有的服务。 Service的加载 Service.exe是操作系统的一个可行组件,在系统启动时被内核加载。 Service.exe加载前要求Device.exe先行加载。 服务程序的实现 在Windows CE中,实现一个服务程序与实现流式接口驱动程序非常相似,所有有服务程序均以动态链接库提供,并导出其中的相关接口函数。 与流式接口驱动程序类似,服务程序有也一个3字符的Prefix和一个Index,这些信息也在注册表中被设置。 服务的启动 Windows CE的服务有两种启动方式 通过注册表中设置相应的注册表项,系统启动时,让Service.exe自动加载服务。 应用程序使用函数加载服务 服务的自启动 当Windows CE启动时,Service.exe搜索系统注册表中的 HKEY_LOCAL_MACHINE\Service 然后枚举Service下的所有子键,并依次加载所有的服务。 服务的手工加载 应用程序通过服务的API函数动态加载服务程序。 Windows CE提供ActivateService()函数来实现服务的动态加载。 独立服务(Standlone Service) 一般情况下,Service.exe进程负责加载所有的服务。 在一些特殊情况下,可能需要将一个服务由Service.exe进程单独加载,从而实现与其他服务的隔离。 如果服务在Service.exe进程中单独加载,这个服务称为独立服务。 独立服务的特点 独立服务不能被应用程序使用CreatFile()和GetServiceHandle()函数打开。 并不是所有的服务都支持被配置成独立服务,如Web Server。 独立服务独立占用内存的一个Slot,需要统筹考虑Slot资源的调配。 独立服务的实现 要把某一个服务配置成独立服务,只需配置注册表键 HKEY_LOCAL_MACHINE\Service\服务\ 下的Context项。 如果Context项设为2,则表明该服务为独立服务。 超级服务(Super Service) 在Windows CE下,许多服务程序都是作为网络服务服务器存在的。这些服务都会侦听某个网络端口,当有客户连接这些端口时,服务程序会给客户提供相应的服务。 这样的服务,Windows CE称之为超级服务。 超级服务与网络服务 超级服务实现了Service.exe对某些端口的监听,当有客户连接时,Service.exe会通知相应的服务程序去处理该请求。 网络服务大都是超级服务,有了超级服务,一些使用网络提供的服务将会大大简化。 超级服务的配置 要把某个服务配置为超级服务,只需在注册表中把 HKEY_LOCAL_MACHINE\Service\服务\ 下的Context项设置为1。 当服务管理器在加载该服务时,会使用ServiceIoControl()函数向服务发送相关控制字。 如果服务也支持超级服务,只需在其IOControl()接收该控制字,并返回True,就可以启动超级服务了。 配置端口号 服务管理器自动侦听的端口也可在注册表中配置。 端口号只需在注册表 HKEY_LOCAL_MACHINE\Service\服务\Accept 下面增加相应项即可 服务管理器会读取注册表,然后调用Socket函数侦听相应的端口。 超级服务的过程 当客户端在相关端口有请求时,服务管理器会向服务发出IOCTL_SERVICE_CONNECTION消息,同时把socket的句柄作为参数传递给服务程序。 服务程序对连接进行进一步的控制和操作。 典型的超级服务:Web Server Windows CE的Web Server是Windows IIS的一个子集,提供了将嵌入式设备配置为一个Web Server的功能。 嵌入式Web Server在实际的应用中
您可能关注的文档
最近下载
- GBT1804—2000自由公差标准.doc VIP
- SIMATIC-S7-200 SMART编程培训(高端培训).ppt VIP
- 2020年越南投资法-恒利中文简体版.pdf VIP
- 2025年3月22日山东事业单位统考《行测》部分真题(含答案).pdf VIP
- 2024年北京市专职工会社会工作者招聘笔试参考题库附带答案详解.pdf VIP
- GB/T39204-2024信息安全技术关键信息基础设施安全保护要求.pptx VIP
- 数学北师大版五年级下册长方体的认识作业设计.doc VIP
- 安全与风险评估模型.pdf VIP
- 报告同级班子履职尽责和廉洁自律情况.pdf VIP
- 2024年新大象版科学六年级上册全册知识点 (精编版).pdf
文档评论(0)