Windows 的两种管理机制_注册表和服务

来源:互联网 发布:linux root密码是什么 编辑:程序博客网 时间:2024/06/16 13:39
本文讲述了Windows的两种基本的机制,他们对于系统的管理和配置只管重要。

1, 注册表在磁盘上的内部结构?
2, 当一个应用程序请求配置信息时Windows如何获得相应的信息?
3, Windows采用了哪些手段来保护这一关键的系统数据库?
一、打开注册表:运行->regedit
二、配置数据被读取的三个时间点:
(1) 在引导过程中,系统读取有关的设置信息
(2) 在登录过程中,Explorer和其他的Windows组件从注册表中读取到每个用户的参数选择
(3) 在应用程序启动过程中,它们读取系统全局范围的设置,还读取一些针对每个用户的设置信息
三、注册表的6个根键:
(1) HKEY_CURRENT_USER:存储一些与当前登录用户有关的数据
(2) HKEY_USERS:存储有关该机器上所有账户的信息
(3) HKEY_CLASSS_ROOT:存储文件关联和组件对象模型(C0M)的对象注册信息
(4) HKEY_LOCAL_MACHINE:存储与系统有关的信息
(5) HKEY_PERFORMANCE_DATA:存储与性能有关的信息
(6) HKEY_CURRENT_CONFIG:存储关于当前硬件配置的一些信息
四、服务:几乎每一个操作系统都有一种在系统启动时刻启动进程的机制,这些进程提供了一些不依赖于任何交互用户的服务。在Windows 中,这样的进程称为服务。
五、Windows服务是由三个组件构成的:服务应用、服务控制程序(SCP),以及服务控制管理器(SCM)。
六、当安装一个包含服务的应用时,该应用的安装程序必须向系统注册它的服务。为了注册该服务,安装程序调用Windows的CreateService函数,然后就会发送一个消息给该服务将要驻留的机器上的SCM。在创建了一个服务以后,一个安装程序或者管理应用程序可以通过StartService函数来启动该服务。
七、当SCM启动一个服务进程时,该进程立即调用StartServiceCtrlDispatcher函数。该函数接收一个入口点列表,每个入口点对应于该进程中的一个服务。每个入口点是由它所对应的服务的名称来标识的。该函数创建了由一个命名管道来跟SCM进行通信,在建立了该通信管道以后,它进入一个循环,等待SCM通过该管道发送过来的命令。每次SCM启动一个属于该进程的服务时,它发送一个“服务启动”命令。该函数对于所接收到的每个启动命令,创建一个服务线程,由该线程来调用所启动服务的入口点函数,并实现该服务的命令循环。该函数一直在等待来自SCM的命令,只有当该进程的所有服务都停止时它才会将控制返回至该进程的main函数,以便服务进程在退出以前做一些资源清理工作。
八、一个服务进程内部的流程:
(1) StartServiceCtrlDispatcher激发服务线程
(2) 服务线程注册控制处理器
(3) StartServiceCtrlDispatcher在处理SCM命令时调用服务处理器
(4) 服务线程处理客户请求
0 0
原创粉丝点击