计算机基本知识(二)

xiaoxiao2021-02-28  121

1  不同进制之间的转换

进制

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

二进制

0

1

10

11

100

101

110

111

1000

1001

1010

1011

1100

1101

1110

1111

八进制

0

1

2

3

4

5

6

7

10

11

12

14

15

16

17

20

十进制

0

1

2

3

4

5

6

7

8

9

10

12

13

14

15

16

十六进制

 

 

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

2  深入windos

一个简化版本的Windows总体结构如图2.1所示。请记住,这个图只是一个基本结构,它并没有显示任何特定内容(例如,网络组件和各种类型设备驱动程序的层次并没有显示)。

 

在图2.1中,首先可注意到中间有一条线把Windows操作系统的用户模式(user mode)和内核模式(kernel mode )两部分划分开来。线上面的方框代表了用户模式的进程,线之下的组件是内核模式的操作系统服务。正如在第1章中曾经提到的,用户模式的线程在一个受保护的进程地 址空间中执行(不过,当它们在内核模式中执行的时候,它们可以访问系统空间)。因此,系统支持进程、服务进程、用户应用程序和环境子系统都有它们各自的私有进程地址空间。

 四种基本的用户模式进程分别描述如下。     固定的(或者硬性指定的)系统支持进程(system support processes),比如登录(logon)进程和会话管理器(session manager ),它们并不是Windows的服务。也就是说,它们不是由服务控制管理器来启动的(第4章将会详细地介绍Windows服务);     服务进程(service processes )宿纳(host )的是Windows服务,比如任务调度器(Task Scheduler )和假脱机服务。Windows服务的运行通常要独立于用户登录。许多Windows服务器应用,比如Microsoft SQL Server和Microsoft Exchange Server,也包含了一些以 Windows服务方式来运行的组件;     用户应用程序(user applications )有六种类型:Windows 32位、Windows 64位、Windows 3.1 16 位、MS-DOS 16位、POSIX 32位或者OS/2 32位;     环境子系统服务器进程(environment subsystem server processes)实现了操作系统环境(environment)的支持部分。这里所谓的环境是指操作系统展示给用户或者程序员的个性化部分。Windows NT最初发布的时候带了三个不同的环境子系统:Windows、POSIX 和OS/2。然而,Windows 2000是最后一次带OS/2发布,之后OS/2就被去掉了。到了Windows XP,在基本的产品中只有 Windows子系统随产品一起发布——不过,一个增强的POSIX 子系统也可以使用,它是针对Unix产品的免费服务的一部分。

在图2.1中,请注意在“服务进程”和“用户应用程序”方框下面的“子系统DLL ”方框。 在Windows下,用户应用程序并不直接调用原始的Windows操作系统服务,相反,它们通过一个或者多个子系统动态链接库(DLLs)来发起调用。子系统DLL 的角色是,将一个已文档化的函数转化为一些恰当的内部(通常是未文档化的)Windows系统服务调用。这个转化过程可能会——也可能不会——向正在为用户应用程序提供服务的环境子系统进程发送一个消息。

Windows的内核模式组件包含以下部分。    Windows执行体(executive )包含了基本的操作系统服务,比如内存管理、进程和线程管理、安全性、I/O、网络和跨进程通信。    Windows内核(kernel )是由一组低层次的操作系统功能构成的,比如线程调度(thread scheduling)、中断(interrupt )和异常分发(exception dispatching ),以及多处理器同步。它也提供了一组例程和基本对象。执行体的其余部分利用这些例程和对象实现更高层次的功能。     设备驱动程序(device drivers )既包括硬件设备驱动程序,也包括文件系统和网络驱动程序。其中硬件设备驱动程序将用户的I/O 函数调用转换成特定的硬件设备I/O 请求。    硬件抽象层(HAL,Hardware Abstraction Layer)是指一层特殊的代码,它把内核、设备驱动程序和Windows执行体的其余部分,跟与平台相关的硬件差异(比如不同主板的差异)隔离开来。    窗口和图形系统(windowing and graphic system )实现了图形用户界面(GUI )函数(更为人们熟知的叫法是Windows USER和GDI 函数),比如对窗口的处理、用户界面控件,以及绘制等。

参考文献:《深入解析Windows操作系统 第四版》 【美】Mark E. Russinovich 、 David A.Solomon 著 潘爱民 译

windows基本服务

tcp/ip服务

注册表

不论是WINDOWS 95/98操作系统,还是WINDOWS NT/2000操作系统,其注册表的结构大体上是基本相同的,都是一种层叠式结构的复杂数据库,由键、子键、分支、值项和缺省值几部分组成。

注册表包括以下的5个主要键项:

1.HKDY_CLASSES_ROOT:包含启动应用程序所需的全部信息,包括扩展名、应用程序与文档之间的关系、驱动程序名、DDE和OLE信息,类ID编号和应用程序与文档的图标等。

2.HKEY_CURRENT_USER:包含当前登录用户的配置信息,包括环境变量、个人程序、桌面设置等。

3.HKEY_LOCAL_MACHINE:包含本地计算机的系统信息,包括硬件和操作系统信息,如设备驱动程序,安全数据和计算机专用的各类软件设置信息。

4.HKEY_USERS:包含计算机的所有用户使用的配置数据,这些数据只有在用户登录在系统上时方能访问。这些信息告诉系统当前用户使用的图标、激活的程序组、开始菜单的内容以及颜色、字体等。

5.HKEY_CURRENT_CONFIG:存放当前硬件的配置信息,其中的信息是从HKEY_LOCAL_MACHINE中映射出来的。

具体的说明请见如下的介绍:

一、HKEY_CLASSES_ROOT根键

  HKEY_CLASSES_ROOT根键中记录的是Windows操作系统中所有数据文件的信息内容,主要记录了不同的文件的文件名后缀和与之对应的应用程序。当用户双击一个文档时,系统可以通过这些信息启动相应的应用程序。

  HKEY_CLASSES_ROOT根键是由多个子键组成的,可分为两种:一种是已经注册的各类文件的扩展名,另一种是各种文件类型的有关信息。由于该根键包含的子键数目最多,下面就用Avifile子键简要介绍它下面的子键的含义:

  1.CLSID子键

  Avifile子键下的第一个子键是“CLSID”,即“分类标识”,在选中它时可以看到其默认的键值。Windows系统可用这个类标识号来识别相同类型的文件。在HKEY_CLASSES_ROOT主键下也有一个子键“CLSID”,其中包含了所有注册文件的类标识。

  2.Compressors 子键

  这个分支下面的两个子键auds和vids分别给出了音频和视频数据压缩程序的类标识,通过这些类标识可找出相应的处理程序,

  (1) auds 子键

  该子键位于HKEY_CLASSES_ROOT\avifile\Compressors\auds分支中,用于设置音频数据压缩程序的类标识。

  (2) vids子键

  该子键位于HKEY_CLASSES_ROOT\avifile\Compressors\vids分支上,用于设置视频数据压缩程序的类标识。

  3.DefaultIcon 子键

  该子键用于设置avifile的缺省图标。

  4.RIFFHandlers子键

  该子键用于设置RIFF文件的句柄。在该子键下包含了AVI和WAVE两个文件的类标识。

  (1) AVI子键

  这个子键位于HKEY_CLASSES_ROOT\avifile\RIFFHandlers\AVI分支上,用于设置AVI文件的类标识。

  (2) WAVE子键

  该子键位于HKEY_CLASSES_ROOT\avifile\RIFFHandlers\WAVE分支上,用于设置WAVE文件的类标识。

  5.protocol子键

  该分支下的子键中包含了执行程序和编辑程序的路径和文件名,

  (1) StdExecute子键

  该子键具有如下子键结构:

  HKEY_CLASSES_ROOT\avifile\protocol\StdExecute\Server,它用于指定avifile的标准执行程序。

  (2) StdFileEditing子键

  该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing分支上,用于设置标准文件编辑程序。

  在这个子键下面有三个子键:

  ①Server子键

  该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing\Server分支上,用于指定编辑程序。

  ②PackageObjects子键

  该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing\

  PackageObjects分支上,用于指定打开avifile的包对象编辑程序。

  ③verb子键

  该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing\verb分支上,用于设置打开标准avi文件编辑程序时的工作状态。

  另外,还有“Handler”和“Handlers”两个子键。

  6.Shell 子键

  该子键位于HKEY_CLASSES_ROOT\avifile\Shell分支上,用于设置视频文件的外壳。

  (1) Open子键

  该子键具有如下子键结构:

  HKEY_CLASSES_ROOT\avifile\Shell\Open\Command

  它用于设置“打开”avi文件的程序。

  (2) Play子键

  该子键具有如下子键结构:

  HKEY_CLASSES_ROOT\avifile\Shell\Play\Command,该键指定用于“播放”命令的程序。

  7.shellex子键

  该子键位于HKEY_CLASSES_ROOT\avifile\shellex分支上。该分支的子键中包含了视频文件的外壳扩展,在该子键下面有一个PropertySheetHandlers子键,用于设置“视频文件属性页”(Avi Page)的文件句柄。在PropertySheetHandlers 子键下面还有一个AviPage 子键,用于设置AviPage的类标识。

二、HKEY_CURRENT_USER根键

  HKEY_CURRENT_USER根键中保存的信息(当前用户的子键信息)与HKEY_USERS\.Default分支中所保存的信息是一样的。任何对HKEY_CURRENT_USER根键中的信息的修改都会导致对HKEY_USERS\.Default中子键信息的修改。

三、KEY_LOCAL_MACHINE   HKEY_LOCAL_MACHINE根键中存放的是用来控制系统和软件的设置。由于这些设置是针对那些使用Windows系统的用户而设置的,是一个公共配置信息,所以它与具体用户没有多大关系。这个根键下面包含了五个子键:

  1.HARDWARE子键

  该子键包含了系统使用的浮点处理器、串口等有关信息。在它下面存放一些有关超文本终端、数字协处理器和串口等信息。HARDWARE子键又包括三个子键:

  DESCRIPTION:用于存放有关系统信息;

  DEVICEMAP:用于存放设备映像;

  RESOURCEMAP;

  2.SAM子键

  该子键已经被系统保护起来,不可能看到里面的内容。

  3.SECURITY子键

  这个子键位于HKEY_LOCAL_MACHINE\Security分支上,该分支只是为将来的高级功能而预留的。

  4.SOFTWARE子键

  这个子键中保留的是所有已安装的32位应用程序的信息。各个程序的控制信息分别安装在相应的子键中。由于不同的机器安装的应用程序互不相同,因此这个子键下面的子键信息会有很大的差异。

  5.SYSTEM子键

  该子键存放的是启动时所使用的信息和修复系统时所需的信息,其中包括各个驱动程序的描述信息和配置信息等。System子键下面有一个CurrentControlSet子键,系统在这个子键下保存了当前的驱动程序控制集的所有信息。

四、HKEY_USERS根键

  HKEY_USERS根键中保存的是默认用户(.DEFAULT)、当前登录用户与软件(Software)的信息。它的下面有三个子键:.DEFAULT子键、S-1-5-21-1229272821-436374067-1060284298-1000和S-1-5-21-1229272821-436374069-1060284298-1000_Classes三个子键,其中最重要的是.DEFAULT子键。

  .DEFAULT子键的配置是针对未来将会被创建的新用户的。新用户根据默认用户的配置信息来生成自己的配置文件,该配置文件包括环境、屏幕、声音等多种信息。

  .DEFAULT下有九个子键,介绍其中的几个:

  1.AppEvents子键

  它包含了各种应用事件(包括事件名称、描述以及各种系统功能的声音)的列表。其下面又包含两个子键EventLabels(按字母顺序列表)和Schemes(按事件分类列表)。

  2.Control Panel子键

  它所包含的内容与桌面、光标、键盘和鼠标等设置有关。改变它们的键值就将改变对应的工作环境或参数。

  3.keyboard layout子键

  该子键位于HKEY_USERS\.DEFAULT\keyboard layout分支上,用于设置键盘的布局,如键盘语言的加载顺序等。该子键下面提供有如下三个子键:

  preload子键

  (1)该子键位于HKEY_USERS\.DEFAULT\keyboard layout\preload分支上,用于设置键盘语言的加载次序。Preload子键下面的子键个数与系统中所安装的键盘语言有关。

  (2)Substitutes子键

  该子键位于HKEY_USERS\.DEFAULT\keyboard layout\substitutes分支,用于设置可替换的键盘语言布局。在通常情况下,此子键的设置是空的。

  (3)Toggle子键

  该子键位于HKEY_USERS\.DEFAULT\keyboard layout\toggle分支上,用于选择键盘语言。

五、HKEY_CURRENT_CONFIG根键

  如果你在Windows中设置了两套或者两套以上的硬件配置文件(Hardware Configuration file),则在系统启动时将会让用户选择使用哪套配置文件。而HKEY_CURRENT_CONFIG根键中存放的正是当前配置文件的信息。    

 


转载请注明原文地址: https://www.6miu.com/read-38321.html

最新回复(0)