包含windows系统知识的词条

Windows操作系统有哪些特点?

Windows操作系统的主要特点有:界面图形化、多用户、多任务、网络支持良好、出色的多媒体功能、硬件支持良好、众多的应用程序等。

创新互联建站是专业的兴和网站建设公司,兴和接单;提供网站设计、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行兴和网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

1、界面图形化,Windows用户界面和开发环境都是面向对象的。用户采用“选择对象-操作对象”这种方式进行工作。比如要打开一个文档,我们首先用鼠标或键盘选择该文档,然后从右键菜单中选择“打开”操作,打开该文档。这种操作方式模拟了现实世界的行为,易于理解、学习和使用。

2、多任务,Windows是一个多任务的操作环境,它允许用户同时运行多个应用程序,或在一个程序中同时做几件事情。每个程序在屏幕上占据一块矩形区域,这个区域称为窗口,窗口是可以重叠的。用户可以移动这些窗口,或在不同的应用程序之间进行切换,并可以在程序之间进行手工和自动的数据交换和通信。虽然同一时刻计算机可以运行多个应用程序,但仅有一个是处于活动状态的,其标题栏呈现高亮颜色。一个活动的程序是指当前能够接收用户键盘输入的程序。

3、设备无关性。设备无关性使你在购买新设备时,不必考虑某个特定的应用软件是否支持该设备,只要Windows支持就够了。

4、出色的多媒体功能,在Windows中你可以完成DOS操作系统所有命令的功能,而且更加容易和方便。此外,使用WindOws还可以完成许多DOS操作系统实现不了的功能。

5、突破DOS64KB内存限制,Windows实现了对内存的自动化管理,使得大程序也能够自如地运行。

Windows系统“安全模式”小知识

Windows系统“安全模式”其实很简单,只要在启动时不停地按F8就能进入安全模式,就会出现选项菜单,再用键盘上的上下光标键进行选择即可进入不同的启动模式。选项菜单包括了以下几个:

1.安全模式

只使用基本文件和驱动程序。如鼠标(USB串行鼠标除外)、监视器、键盘、硬盘、基本视频、默认系统服务等,但无网络连接。

如果采用安全模式也不能成功启动计算机,则可能需要使用恢复控制台功能来修复系统。

2.带网络连接的安全模式

在普通安全模式的基础上增加了网络连接。但有些网络程序可能无法正常运行,如MSN等,还有很多自启动的应用程序不会自动加载,如防火墙、杀毒软件等。所以在这种模式下一定不要忘记手动加载,否则恶意程序等可能会入侵在你修复电脑的过程中。

3.带命令行提示符的安全模式

只使用基本的文件和驱动程序来启动,在登录之后,屏幕上显示命令提示符,而非Windows图形界面。

说明:在这种模式下,如果你不小心关闭了命令提示符窗口,屏幕会全黑。可按下组合键Ctrl+Alt+Del,调出“任务管理器”,单击“新任务”,再在弹出对话框的`“运行”后输入“C:WINDOWSexplorer.exe”,可马上启动Windows XP的图形界面,与上述三种安全模式下的界面完全相同。如果输入“c:windowssystem32cmd”也能再次打开命令提示符窗口。事实上,在其它的安全模式甚至正常启动时也可通过这种方法来启动命令提示符窗口。

4.启用启动日志

以普通的安全模式启动,同时将由系统加载(或没有加载)的所有驱动程序和服务记录到一个文本文件中。该文件称为 ntbtlog.txt,它位于 %windir% (默认为c:windows)目录中。启动日志对于确定系统启动问题的准确原因很有用。

5.启用VGA模式

利用基本VGA驱动程序启动。当安装了使Windows不能正常启动的新视频卡驱动程序时,这种模式十分有用。事实上,不管以哪种形式的安全模式启动,它总是使用基本的视频驱动程序。因此,在这些模式下,屏幕的分辨率为640×480且不能改动。但可重新安装驱动程序。

6.最后一次正确的配置

使用Windows上一次关闭时所保存的注册表信息和驱动程序来启动 。最后一次成功启动以来所作的任何更改将丢失。因此一般只在配置不对(主要是软件配置)的情况下,才使用最后一次正确的配置。但是它不能解决由于驱动程序或文件被损坏或丢失所导致的问题。

7.目录服务恢复模式

这是针对服务器操作系统的,并只用于恢复域控制器上的SYSVOL目录和Active Directory目录服务。

8.调试模式

启动时通过串行电缆将调试信息发送到另一台计算机。

如果正在或已经使用远程安装服务在您的计算机上安装 Windows,则您可以看到与使用远程安装服务还原或恢复系统相关的附加选项。

知道了这一些,你就完全可以使用Windows系统“安全模式”了。

Windows的五个常用小知识

关闭windows xp还原功能

系统还原是windwos xp的其中一个特色,但系统还原的要求是需要巨大的硬盘空间,所以还是建议大家禁用这个功能。默认的windows xp设置中,每个分区都有设置还原点,记录每个分区的软件安装和使用状态。使用默认的设置来使用计算机的话,硬盘的空间会因为还原功能的原因产生数G的空间占用;而且系统还原要进行大量的数据读写硬盘,CPU的占用率也是很大的,目前多数人的机器还是停留在G级别以下的CPU里,速度可能会受影响。所以除非你的硬件真是很顶级的配置,而且也需要经常地安装测试新软件或变更系统的设置,对XP的系统还原功能真的是用得着,否则还是关闭了它,老老实实用软件本身的卸载功能吧。

小提示:如果真的想体会一下这种新功能,折衷的办法是,可以把其他分区的还原功能关闭,留下你安装XP的分区,这样可以对Windows的状态进行记录和有选择地恢复。象你装游戏和放图片、MP3的分区,完全没必要用系统还原功能。

任务栏中的“分组相似任务栏按钮”设置

这要看你的最常用的应用而定。“分组相似任务栏按钮”设置虽然可以让你的任务栏少开窗口,保持干净,但是如果你是经常用QQ这样的通讯软件和人在线聊天的话,如果有两个以上的好友同时和你交谈,你马上会感到XP这种默认设置造成的不便――每次你想切换交谈对象的时候,要先点击组,然后再弹出的菜单里选要交谈的好友,而且每个好友在组里显示的都是一样的图标,谈话对象多的时候,你可能要一个个的点击来看到底刚才是谁回复了话,在等着你反应,而且选错了一个,又得从组开始选,很麻烦。显然地,这样不如原来的开出几个窗口,在任务栏里的.各个小窗口点击一次就可进行开始聊天。

XP的这种默认设置是为了方便用户浏览网页而设计的。所以建议你要根据自己的实际应用来更改这种设置,真的要经常上网浏览的话,其实用一个MYIE这样的IE内核浏览器,可以不影响QQ的使用,又不占用多个任务栏位置,一举两得。更改的办法是:开始-控制面板-外观和主题-任务栏和开始菜单,去掉“分组相似任务栏按钮”选项前面的钩。

文本文件和邮件的最大化技巧

从Windows2000开始,当你点击存放在硬盘里的后缀名为EML的邮件的时候,默认的状态总不是最大化的,而是一个讨厌的小窗口,而且不具备记忆状态的能力,当你最大化这个窗口后,下次打开邮件又是一个小窗口。文本文件也有类似的情况。这估计是微软的设计上的疏忽,在正规的帮助文件和设置选项里,都没这个记忆最大化问题的说明或选项。我曾经就此问题发邮件到微软中国的反馈信箱里,得到的答复是让我打技术支持热线电话,呵呵。虽然在功能上没什么影响,但是要每次都点击一下最大化按钮,操作上很麻烦。XP里这个小问题也没解决,估计困扰着不少人。

笔者这两天摸索XP,终于发现,可以用拖动窗口大小办法来让Windows记忆最大化的状态:打开一个EML邮件后,千万不要点击最大化的按钮,而是要移动指针到小窗口的边缘,按住鼠标左键把窗口上下左右都拉到屏幕的最大状态,然后点击关闭。下次你将发现凡是打开这种文件,Windows都自动地最大化了。文本文件TXT也是如此。

但是要提醒大家的是,在Windows 98里,却不是用这样的技巧。98里要邮件记忆最大化状态,必须先最大化一个打开的邮件,然后点击回复,回复的界面就会最大化,Windows这样也记住了其最大化的状态。在Windows 9X里如果你是单纯的拖放窗口或是每次都最大化邮件,是无效的。

关 闭自动更新、目录共享和远程协助支持

这些和Windows2000里一样,都是些专门为网络应用设计的功能。对于国内的多数人而言,微软的Windows自动更新和远程协助都是没什么用的;如果你设置了目录共享,像FUNLOVE这样的专门在局域网里肆虐的病毒就很难清除,所以没什么特殊应用的话,建议关闭为好。可以在系统选项和服务管理里关闭这些功能。

小提示:如果你的电脑硬件配置不高,XP的视觉特效如动画窗口、淡入淡出也请关闭了,以免影响速度。

休 眠键的设置

XP安装后,默认的设置是用户按键盘上的休眠键,计算机不作任何操作。因为XP的休眠是一种挂起到硬盘的功能,即使你完全切断电源,XP在下次开机的时候,也能从硬盘里储存的数据读出上次开机的状态,迅速地恢复加快用户的开机时间。这样的功能,和Windows9X里的休眠不能切断电源是有区别的,唤醒的时间也比9X里长,但重新开机后进入Windows速度就快很多。XP考虑到用户使用习惯和XP与某些老电源的兼容性问题,就设置为无效。你可以在控制面板里的电源管理中,重新把休眠键设置为有效,我建议你设置为弹出菜单,这样可以选择休眠、关机或是注销。

因为XP的休眠先要从内存中读取系统的当前状态,所以要求占用和你物理内存容量相等的硬盘空间,默认是在C盘的,所以用户要根据自己硬件的实际能力来设置。设置了休眠键后,有的主板电源要重新启动XP才有效,设置后马上按SLEEP来试验,是无反应的;但有的又能立即生效。注意了,如果你的主板电池掉电,导致日期不正确,而XP又没激活的话,休眠后可能会因为日期问题被XP检测到要求激活,否则就锁定系统。

Windows Server 知识点

1、禁止 Windows 服务器开机磁盘自检

首先 :运行—cmd

执行命令:chkntfs/t:0

2、Windows 服务器系统重置

1)为什么要进行 Sysprep

当你从一台主机克隆出多个 PC,或者使用同一虚拟机母板克隆出多台 VM 之后,其 SID 势必会相同,在加入域时会造成安全主体的识别混乱和加域失败等。对于同一局域网中,存在相同 SID 的计算机或账户也可能会导致很多奇怪的问题,特别是权限和安全方面的问题。以上原理说清楚之后,大家便知道为什么要进行 Windows 服务器  Sysprep 操作了。

不可回避的是,也有很多 IT 管理员采用了各种克隆技术来快速批量部署数十、数百甚至上千台的 PC 或服务器,这种以映像方式将 Windows 操作系统、应用程序和软件配置进行批量分发的场景已经非常常见。那么 SID 是否重复就显得尤为重要,如果不确定你的 Windows 客户端是否有 SID 相同的情况,可以使用 whoami /user 命令进行查看。

2)查看Windows系统用户的SID

whoami /user                                               #查看当前用户的SID

wmic useraccount get name,sid                    #查看当前系统所有用户的SID

3)使用 Sysprep

要在 Windwos 中执行 Sysprep 操作非常简单,只需浏览到 C:\Windows\System32\sysprep 目录执行 sysprep.exe 文件即可。

在弹出的「系统准备工具」窗口中,我们通常会选择「OOBE」和「通用」选项,其中的 OOBE 是指系统下次启动之后重新进入配置界面(与全新安装 Windows 10 之后的操作几乎一样),选择「关机」是为方便管理员将该系统制作成虚拟机母板或要分发的映像母板。

操作执行完成后,我们就可以使用映像抓取工具进行捕获后部署或将 VHD/VMDK 用于全新的虚拟机当中。所有进行过 Sysprep 操作的 Windows 10 由于剔除了安全标识符等操作系统主体信息,在下次启动时会重新进入 OOBE 阶段。

3、查看Windows Server 2003 系统的激活情况

1)第一步执行命令

cd  \windows\system32\oobe\

2)第二步执行命令

msoobe.exe  /a

4、

Windows 操作系统的使用

Windows 操作系统的使用

Windows 规定了这个限制条件,目的是为了确保内核对象结构保持状态的一致。下面是关于Windows 操作系统的使用,希望大家认真阅读!

1,进程虚拟地址空间

在windows操作系统中,每个进程都有自己的私有地址空间,因此一个进程的线程只能访问属于这个进程的内存空间,即进程之间是地址隔离的。在windows2000中,进程虚拟地址空间可分为如下四个部分:

1)NULL 区 (0x00000000~0x0000FFFF): 如果进程中的一个线程试图操作这个分区中的数据,CPU就会引发非法访问。他的作用是,调用malloc等内存分配函数时,如果无法找到足够的内存空间,它将返回NULL。而不进行安全性检查。它只是假设地址分配成功,并开始访问内存地址0x00000000(NULL)。由于禁止访问内存的这个分区,因此会发生非法访问现象,并终止这个进程的运行。

2)用户模式分区 ( 0x00010000~0xBFFEFFFF):这个分区中存放进程的私有地址空间。一个进程无法以任何方式访问另外一个进程驻留在这个分区中的数据(相同exe,通过copy-on-write来完成地址隔离)。(在windows中,所有.exe和动态链接库都载入到这一区域。系统同时会把该进程可以访问的所有内存映射文件映射到这一分区)。

2)隔离区 (0xBFFF0000~0xBFFFFFFF):这个分区禁止进入。任何试图访问这个内存分区的操作都是违规的。微软保留这块分区的目的是为了简化操作系统的现实。

3)内核区 (0xC0000000~0xFFFFFFFF):这个分区存放操作系统驻留的代码。线程调度、内存管理、文件系统支持、网络支持和所有设备驱动程序代码都在这个分区加载。这个分区被所有进程共享。

一、在这一节,我们详细讨论一下用户模式分区,用户模式分区从地地址到高地址依次为:

1)代码段,存放函数体的二进制代码。

2)静态数据区(分为以初始化数据段和未初始化数据段)全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。程序结束后由系统释放 。

3)堆,一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。

......(未映射部分)(这个部分包含各种导入的dll等)

4)栈, 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。

二、下面详细介绍exe导入到执行的全过程,以及地址空间的加载。

1)系统找到在调用CreateProcess时指定的exe文件。

2)系统创建一个新进程的内核对象。

3)系统为这个新进程创建一个私有的地址空间。

4)系统保留一个足够大的地址空间区域,用来存放exe文件。这个区域的位置在exe文件中设定。默认情况下,exe文件的基地址是0x0400000. (1.编译器处理每个源代码模块,生成obj文件。2.链接程序将所有obj模块的内容组合在一起,生成一个单独的可执行映射文件即exe,该映射文件包含用于可执行模块的所有二进制代码以及全局/静态数据变量,同时也包含一个导入部分,列出了该可执行模块所需要的所有dll模块的名字,对于每个列出的 dll名,该导入部分指明了那些函数和变量符号是被可执行的二进制代码所引用的)

5)在将exe文件映射到进程的地址空间之后,系统会访问exe 文件中的一个段(这个段列出了一些DLL文件),并列出exe文件代码中调用函数dll文件的部分。然后,系统为每个dll文件调用loadlibrary函数,如果某个dll文件需要调用更多的 dll,那么系统会再次调用loadlibrary函数,来加载这个dll。系统保留一个足够大的地址空间区域,用来存放这个dll文件。默认情况下,微软创建dll文件基地址0x10000000。 windows提供的所有标准系统dll都有不同的基地址,这样,即使加载到单个地址空间,他们之间也不会重叠。(1.编译器处理每个源代码模块,生成一个obj模块。2.链接程序将所有obj模块的内容组合在一起,生成一个单独的dll映像文件,该映像文件包含用于dll的所有二进制代码以及全局/静态数据变量。3.如果链接程序检查到dll的源代码模块至少导出了一个函数或变量,则链接程序同时生成一个单独的lib文件,这个lib文件很小,只是简单地列出了所有被导出的函数和变量的符号名)

6)当把所有的exe文件和dll文件都映射到进程的地址空间之后,系统就会创建一个线程内核对象,并使用该线程以DLL_PROCESS_ATTACH为参数来调用每个DLL的DllMain函数,当所有映射的DLL都对此通知做出相应后,系统将驱使主线程开始执行exe文件的启动代码(winmainCRTStartup 函数),这个函数负责对c/c++运行时库进行初始化和调用函数入口函数(main 或 winmain)。

下面强调一些dll和lib的加载区别:

dll允许可执行模块(.dll文件或.exe文件)仅包含在运行时定位DLL函数的可执行代码所需的信息(即将dll附带的lib加载到可执行模块中)。

对于lib文件,链接器从静态链接库LIB获取所有被引用函数,并将库同代码一起放到可执行文件中。

三、堆和栈的理论知识

3.1申请方式

stack: 由系统自动分配。 例如,声明在函数中一个局部变量 int b; 系统自动在栈中为b开辟空间

heap: 需要程序员自己申请,并指明大小,在c中malloc函数 ,在C++中用new运算符 。

3.2 申请后系统的响应

栈:只要栈的剩余空间大于所申请空间,系统将为程序提供内存,否则将报异常提示栈溢出。

堆:首先应该知道操作系统有一个记录空闲内存地址的链表,当系统收到程序的申请时,

会遍历该链表,寻找第一个空间大于所申请空间的堆结点,然后将该结点从空闲结点链表中删除,并将该结点的'空间分配给程序,另外,对于大多数系统,会在这块内存空间中的首地址处记录本次分配的大小,这样,代码中的delete语句才能正确的释放本内存空间。另外,由于找到的堆结点的大小不一定正好等于申请的大小,系统会自动的将多余的那部分重新放入空闲链表中。

3.3申请大小的限制

栈:在Windows下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在WINDOWS下,栈的大小是2M(也有的说是1M,总之是一个编译时就确定的常数),如果申请的空间超过栈的剩余空间时,将提示overflow。因此,能从栈获得的空间较小。

堆:堆是向高地址扩展的数据结构,是不连续的内存区域。这是由于系统是用链表来存储的空闲内存地址的,自然是不连续的,而链表的遍历方向是由低地址向高地址。堆的大小受限于计算机系统中有效的虚拟内存。由此可见,堆获得的空间比较灵活,也比较大。

3.4申请效率的比较:

栈由系统自动分配,速度较快。但程序员是无法控制的。

堆是由new分配的内存,一般速度比较慢,而且容易产生内存碎片,不过用起来最方便.

另外,在WINDOWS下,最好的方式是用VirtualAlloc分配内存,他不是在堆,也不是在栈是直接在进程的地址空间中保留一快内存,虽然用起来最不方便。但是速度快,也最灵活。

3.5堆和栈中的存储内容

栈: 在函数调用时,第一个进栈的是主函数中后的下一条指令(函数调用语句的下一条可执行语句)的地址,然后是函数的各个参数,在大多数的C编译器中,参数是由右往左入栈的,然后是函数中的局部变量。注意静态变量是不入栈的。

当本次函数调用结束后,局部变量先出栈,然后是参数,最后栈顶指针指向最开始存的地址,也就是主函数中的下一条指令,程序由该点继续运行。

堆:一般是在堆的头部用一个字节存放堆的大小。堆中的具体内容有程序员安排。

3.6 “栈(stack)”和“堆(heap)”是两种不同的动态数据区,栈是一种先进后出的线性结构,栈顶地址总是小于等于栈的基地址。堆是一种链式结构。进程的每个线程都有私有的“栈”,所以每个线程虽然代码一样,但本地变量的数据都是互不干扰。一个堆栈可以通过“基地址”和“栈顶”地址来描述。全局变量和静态变量分配在静态数据区,本地变量分配在动态数据区,即堆栈中。程序通过堆栈的基地址和偏移量来访问本地变量。

四、下面说明一下啊函数的调用堆栈变换,来更好的理解堆栈的原理。(VS2005测试)

压栈的顺序是从高地址向低地址方向。

1)参数以从右到左的次序压入堆栈。

2)压入EBP的值(书上分析这个位置插入一个函数返回指令地址,但分析时没有发现因为间隔只有4个字节)

3)压入局部变量

4)返回值放入EAX寄存器中。因为win32汇编一般用eax返回结果 所以如果最终结果不是在eax里面的话 还要把它放到eax。所以返回值的释放过程在参数之后进行。

;


标题名称:包含windows系统知识的词条
URL网址:http://scyanting.com/article/hdsocs.html