【棋牌源码购买平台】【酒店app软件源码】【营销案例源码】奇偶源码_奇偶编程

时间:2024-12-28 19:39:38 来源:网页源码很大怎么办 分类:热点

1.如何判断两个数的奇偶奇偶奇偶性?
2.stop;oxoooofe(oxooooooo2,ox882ef008,0x88319e28,ox87f6f8bo)
3.79C3125EAC1CE25EE2C99A9B01DFC00

奇偶源码_奇偶编程

如何判断两个数的奇偶性?

       编程思路: 

       (1)使用一个计数器count来判断终止条件;

       (2)用除以2后的余数来判断是不是偶数。

       程序如下:

       编译连接:

       运行结果:

       由于偶数相差为2,源码棋牌源码购买平台所以可以优化代码:

       源代码:

#include<stdio.h>

       int main()      /*浙江宁海陆继信*/

       {

           /* 浙江宁海陆继信程序优化 */

        int sumEven = 0;

        int i=0;  

            while(i <= )   /* 循环直到    */

                   {

                       sumEven=sumEven+i;  //偶数求和;

                       i=i+2;  //偶数相差为2,编程酒店app软件源码不必判断;

                    }

                 printf("sumEven: %d\n" , sumEven); //打印结果

                  return 0;

       }

stop;oxoooofe(oxooooooo2,oxef,0xe,oxf6f8bo)

       è“å±"的硬件原因及解决

       "蓝屏"现象多和内存大小、CPU频率、光驱、硬盘碎片等等关系密切......在计算机的使用过程中,经常会遇到蓝屏的情况。对于初学者来讲,好象就是一场电脑灾难一样,不知所措。其实只要了解了原因之后就不用怕了。造成计算机蓝屏的原因有很多种,硬件方面的原因总体可以概括为以下几种:

       ä¸€ã€å±å¹•æ˜¾ç¤ºç³»ç»Ÿå¿™ï¼Œè¯·æŒ‰ä»»æ„é”®ç»§ç»­â€¦â€¦

       1、虚拟内存不足造成系统多任务运算错误

       è™šæ‹Ÿå†…存是WINDOWS系统所特有的一种解决系统资源不足的方法,其一般要求主引导区的硬盘剩余空间是其物理内存的2-3倍。而一些发烧友为了充分利用空间,将自己的硬盘塞到满满的,忙记了WINDOWS这个苛刻的要求。结果导致虚拟内存因硬盘空间不足而出现运算错误,所以就出现蓝屏。要解决这个问题好简单,尽量不要把硬盘塞得满满的,要经常删除一些系统产生的临时文件、交换文件,从而可以释放空间。或可以手动配置虚拟内存,选择高级,把虚拟内存的默认地址,转到其他的逻辑盘下。这样就可以避免了因虚拟内存不足而引起的蓝屏。

       2、CPU超频导致运算错误

       è¶…频对于发烧友来说是常事,所以由超频所引起的各种故障也就在所难免了。超频,就本身而言就是在原有的基础上完成更高的性能,但由于进行了超载运算,造成其内部运算过多,使CPU过热,从而导致系统运算错误。有些CPU的超频性能比较好,如INTEL的赛扬处理器和AMD-K6-2处理器还算较好的,但有时也会出现一些莫名其妙的错误。(例如:我曾试过将INTEL赛扬A,在超频到时,软驱在没有接受命令时,进行读盘操作)。INTEL的低于的CPU以及AMD-K5的超频能力就不是那么好。建议高档的CPU要超频时,那么散热工作一定要做好,最好装一个大的风扇,再加上一些硅胶之类的散热材料。至于一些低档的CPU我建议你就最好不要超频了,免得超频达不到预想的效果反而经常出现蓝屏影响计算机的正常速度。

       äºŒã€å†…存条的互不兼容或损坏引起运算错误

       è¿™æ—¶ä¸ªæœ€ç›´è§‚的现象,因为这个现象往往在一开机的时候就可以见到,根本启动不了计算机,画面提示出内存有问题,问你是否要继续。造成这种错误是物理上的损坏内存或者内存与其它硬件不兼容所致。这时候只有换过另外的内存了。

       ä¸‰ã€å…‰é©±åœ¨è¯»ç›˜æ—¶è¢«éžæ­£å¸¸æ‰“开所至

       è¿™ä¸ªçŽ°è±¡æ˜¯åœ¨å…‰é©±æ­£åœ¨è¯»å–数据时,由于被误操作打开而导致出现蓝屏。这个问题不影响系统正常动作,只要再弹入光盘或按ESC键就可以。

       ä»¥ä¸Šæ˜¯æˆ‘在维护计算机中碰到导致蓝屏的几种原因,或许还会有其他一些莫名其妙的问题导致计算机出现蓝屏。不管怎样,遇到这类问题后,应先仔细分析问题发生的原因,然后再着手解决。

       å››ã€ç¡¬ä»¶å‰©ä½™ç©ºé—´å¤ªå°æˆ–碎片太多

       ç”±äºŽWin9X运行时需要用硬盘作虚拟内存,这就要求硬盘必须保留一定的自由空间以保证程序的正常运行。一般而言,最低应保证MB以上的空间,否则出现“蓝屏”很可能与硬盘剩余空间太小有关。另外,硬盘的碎片太多,也容易导致“蓝屏”的出现。因此,每隔一段时间进行一次碎片整理是必要的。

       äº”、系统硬件冲突

       è¿™ç§çŽ°è±¡å¯¼è‡´â€œè“å±â€ä¹Ÿæ¯”较常见。实践中经常遇到的是声卡或显示卡的设置冲突。在“控制面板”→“系统”→“设备管理”中检查是否存在带有黄色问号或感叹号的设备,如存在可试着先将其删除,并重新启动电脑,由Win9X自动调整,一般可以解决问题。若还不行,可手工进行调整或升级相应的驱动程序。

       "蓝屏"的软件原因及解决

       ä¸Žç¡¬ä»¶å¯†åˆ‡è”系的是软件,有时软件在"蓝屏"现象中也"功不可没",加载了过多的程序、注册表有问题、软硬不兼容、驱动程序有问题,相对于硬件原因来说要不易察觉些,可要多加注意.........

       ä¸€ã€å¯åŠ¨æ—¶åŠ è½½ç¨‹åºè¿‡å¤š

       ä¸è¦åœ¨å¯åŠ¨æ—¶åŠ è½½è¿‡å¤šçš„应用程序(尤其是你的内存小于MB),以免使系统资源消耗殆尽。正常情况下,Win9X启动后系统资源应不低于%。最好维持在%以上,若启动后未运行任何程序就低于%,就需要卸掉一部分应用程序,否则就可能出现“蓝屏”。

       äºŒã€åº”用程序存在着BUG

       æœ‰äº›åº”用程序设计上存在着缺陷或错误,运行时有可能与Win9X发生冲突或争夺资源,造成Win9X无法为其分配内存地址或遇到其保护性错误。这种BUG可能是无法预知的,免费软件最为常见。另外,由于一些用户还在使用盗版软件(包括盗版Win9X),这些盗版软件在解密过程中会破坏和丢失部分源代码,使软件十分不稳定,不可靠,也常常导致“蓝屏”。

       ä¸‰ã€é­åˆ°ä¸æ˜Žçš„程序或病毒攻击所至

       è¿™ä¸ªçŽ°è±¡åªè¦æ˜¯å¹³æ—¶æˆ‘们在上网的时候遇到的,当我们在冲浪的时候,特别是进到一些BBS站时,可能暴露了自己的IP,被"黑客"用一些软件攻击所至。对互这种情况最好就是在自己的计算机上安装一些防御软件。再有就是登录BBS要进行安全设置,隐藏自己IP。

       å››ã€ç‰ˆæœ¬å†²çª

       æœ‰äº›åº”用程序需调用特定版本的动态链接库DLL,如果在安装软件时,旧版本的DLL覆盖了新版本的DLL,或者删除应用程序时,误删了有用的DLL文件,就可能使上述调用失败,从而出现“蓝屏”。不妨重新安装试一试。

       äº”、注册表中存在错误或损坏

       å¾ˆå¤šæƒ…况下这是出现“蓝屏”的主要原因。注册表保存着Win9X的硬件配置、应用程序设置和用户资料等重要数据,如果注册表出现错误或被损坏,就很可能出现“蓝屏”。如果你的电脑经常出现“蓝屏”,你首先就应考虑是注册表出现了问题,应及时对其检测、修复,避免更大的损失。

       å…­ã€è½¯ç¡¬ä»¶ä¸å…¼å®¹

       æ–°æŠ€æœ¯ã€æ–°ç¡¬ä»¶çš„发展很快,如果安装了新的硬件常常出现“蓝屏”,那多半与主板的BIOS或驱动程序太旧有关,以致不能很好支持硬件。如果你的主板支持BIOS升级,应尽快升级到最新版本或安装最新的设备驱动程序。

       Windows "蓝屏"分析与解决篇

       Win也许可以说得上是一个划时代的操作系统,但是它仍然不能够避免蓝屏死机(Blue Screen of Death)问题,Win的"蓝屏"(BSOD)和NT4以前的"蓝屏"消息是完全不同的。最大的不同就是NT中的BSOD只包含一个通用的停止消息类型(就是实际的出错代码), 但是Win的BSOD包含有两种消息类型:停止消息和硬件消息。停止消息是指,当win的内核发现一个它不能够恢复的软件错误时候产生的错误消息,它分为:常规停止消息、安装停止消息、可执行程序安装停止消息、软件陷阱停止消息四种类型......针对Windows的蓝屏,在上述概括的现象与对策基础上,我们分两方面来分析:

       Windows 中蓝屏死机之停止信息分析

       ç®€ä»‹ï¼šä»€ä¹ˆæ˜¯è“å±æ­»æœºï¼ˆBSOD)问题?

       BSOD就是显示在蓝色屏幕背景下的出错信息。一般这种出错信息严重到你的整个操作系统当机,你只有重新冷启动的选择。

       åˆ¨æžBSOD

       BSOD可以分成独立的几部分,每部分包含有有价值的错误处理信息。这几部分包括:

       1、bug检查部分:这是BSOD中包含实际出错消息的位置。在这部分中,你应该注意的是出错代码(就是在单词“Stop”后面的十六进制数字)和错误符号(就是紧跟在出错代码后的单词)

       2、推荐用户采取行动部分:这部分经常包含一些一般的指导你如何纠正错误的步骤的消息。

       3、调试端口信息部分:这部分包含有你应该如何设置你的内核调试器的信息。内核调试器是让你可以通过手工连接到计算机并对进程进行调试的工具。

       ä¸‹é¢æ˜¯ä¸€ä¸ªå…·ä½“çš„BSOD例子:

       *** Stop: 0xE (0xFAA, 0X, 0X)

       KMODE_EXCEPTION_NOT_HANDLED

       *** Address FAA base at fA, DateStamp ef8d - wdmaud.sys

       If this is the first time you've seen this Stop error screen, restart your computer.

       If this screen appears again, follow these steps:

       Check to be sure you have adequate disk space. If a driver is identified in the

       Stop message, disable the driver or check with the manufacturer for driver updates.

       Try changing video adapters.

       Check with your hardware vendor for any BIOS updates. Disable BIOS memory options

       such as caching or shadowing. If you need to use Safe Mode to remove or disable

       components, restart your computer, press F8 to select Advanced Startup Options,

       and then select Safe Mode.

       Refer to your Getting Started manual for more information on troubleshooting Stop errors.

       Kernel Debugger Using: COM2 (Port 0x2f8, Baud Rate )

       Beginning dump of physical memory

       Physical memory dump complete. Contact your system administrator or technical support group.

       æ ¹æ®è¿™ä¸ªå…·ä½“的例子,按照上面刨析的BSOD四个部分,下面一一介绍:

       bug检查部分:

       è¿™æ˜¯BSOD中包含实际出错消息的位置。它看上去就是下面的代码:

       *** Stop: 0xE (0xFAA, 0X, 0X)

       KMODE_EXCEPTION_NOT_HANDLED *** Address FAA base at fA, DateStamp ef8d - wdmaud.sys

       å…¶ä¸­é”™è¯¯ä»£ç æ˜¯ä¸€ä¸ªç´§è·Ÿåœ¨Stop后面的十六进制数,在这里面它由其它四个数字组成。

       è€Œé”™è¯¯ç¬¦å·æ˜¯æŒ‡ç´§éšå…¶åŽçš„KMODE_EXCEPTION_NOT_HANDLED.

       åœ¨ä¸€äº›BSOD出错信息中,一个内存位置和文件名出现在错误符号的后面。这个信息告诉了当错误发生的时候在内存中的位置和哪个文件导致了错误的发生。当然你是否能够看到该信息是由哪种停止消息类型来决定的。在一些实际运用中,你只能够看到上面的第一行。而这里通常是表示由显示服务中导致的问题。 推荐用户采取行动部分:

       åœ¨ä¸Šé¢çš„例子中推荐用户采取行动部分如下:

       If this is the first time you've seen this Stop error screen, restart your computer. If this screen appears again, follow these steps:

       Check to be sure you have adequate disk space. If a driver is identified in the Stop message, disable the driver or check with the manufacturer for driver updates. Try changing video adapters.

       Check with your hardware vendor for any BIOS updates. Disable BIOS memory options such as caching or shadowing. If you need to use Safe Mode to remove or disable components, restart your computer, press F8 to select Advanced Startup Options, and then select Safe Mode.

       Refer to your Getting Started manual for more information on troubleshooting Stop errors.

       æŽ¨èç”¨æˆ·é‡‡å–行动部分通常是推荐用户在遇到了出错信息后应该采取的解决步骤。在消息中可以看到,解决一个BSOD也许只要重新启动或则整理出足够大的剩余空间就能够解决了。尽管这样的方法偶尔会起到作用,但是实际上要解决BSOD经常要远远复杂得多。

       è°ƒè¯•ç«¯å£ä¿¡æ¯éƒ¨åˆ†ï¼š

       è¿™éƒ¨åˆ†åŒ…含有你应该如何设置你的内核调试器的信息。我会在以后的网站里面详细介绍什么是的内核调试器。在上面的例子中,这部分内容是:

       Kernel Debugger Using: COM2 (Port 0x2f8, Baud Rate )

       Beginning dump of physical memory Physical memory dump complete. Contact your system administrator or technical support group.

       åœæ­¢ä¿¡æ¯çš„四种类型

       å½“程序或则驱动程序发生了一个不能够控制的错误消息或则试图执行一个非法指令时,系统就会发生停止出错信息。而这种信息通常由四种类型组成。

       1、常规停止消息:在正常的使用win时发生的停止消息

       å¸¸è§„停止消息通常是最难解决的出错信息,因为有可能有无数的原因能够导致错误的发生。

       2、安装停止消息:在安装win过程中的停止消息,通常由你的系统中存在和不兼容的硬件设备引起的。

       è§£å†³åŠžæ³•æ˜¯ä½ æŸ¥çœ‹ç³»ç»Ÿä¸­çš„硬件设备,找到没有列出在兼容列表中的设备。然后和你的硬件设备厂商联系看他们是否能够给你提供该设备的驱动程序。如果他们不能,那你只好从你的系统中删除该设备,并用其它的可以兼容的设备替换掉。

       å¦‚果你的所有硬件都是兼容的,你也许是存在有两个互相冲突的硬件设备。要解决这个问题,先移走任何不是必要的硬件设备,然后重新装载,一旦装载成功后,把所有移走的设备全部重新加入到系统中。这样做,通常能够解决这个问题,至少能够告诉你哪些硬件是有冲突的。

       3、可执行程序安装停止消息:表示发生在安装过程中第4个阶段(执行程序部分)的停止消息。

       å®‰è£…在可执行程序的安装过程中有两个阶段。第一个阶段是禁止硬件中断同时装载一些基本的组件,例如硬件提取层。第二个阶段是初始化你系统中所有的硬件。如果你在安装程序到了这个阶段的时候收到了停止消息错误。需要再次运行诊断程序,来判断你的硬件是否都工作正常。然后重新安装。如果你仍然遇到这个出错消息,那么就需要和微软技术支持部打交道了。

       4、软件陷阱停止消息:由于软件中的错误陷阱并且当程序试图执行一个非法指令的时候发生的停止消息。

       ç”±äºŽè½¯ä»¶ä¸­çš„错误陷阱并且当程序试图执行一个非法指令的时候发生的停止消息。例如,程序试图向一个本来是保存数字的变量写字符串的时候,这个错误就有可能发生。如果你遇到了这种类型的错误,需要记下出错信息,是什么软件导致了错误,一般这些软件都有新的版本来纠正这些错误的。

       å½“你遇到了停止消息时候可能需要的解决问题的步骤:

       é¦–先判断你最近是不是在系统中有任何的变动。如果你有,那么这些变动经常是问题产生的根源。试图删除或者移走新的硬件或软件,看是否能够解决问题。检查系统中的硬件,最好如果有硬件检测程序的话,可以运行该程序进行检测,同时重新插放你的内存卡和扩展卡。

       å¦‚果你的停止信息是发生在启动中或刚启动的过程中,那么这有可能是你的某个服务或则设备驱动程序中的问题。可以尝试将机器启动到安全模式。如果你的系统能够启动成功安全模式,那么表示你的猜测是正确的。

       åŒæ—¶è¦ç¡®ä¿ä½ çš„防病毒程序是设计成和win兼容的,并且随时保持更新。如果错误仍然发生,那么进入你的CMOS设置,禁止掉BIOS中的象缓存或则shadow之类的选项,然后重新启动。

       Windows 蓝屏死机之STOP对"症"下药

       ä»Žç†è®ºä¸Šè®²ï¼Œçº¯ä½çš„Windows 是不会出现死机的,但是这仅仅是理论上。病毒或硬件和硬件驱动程序不匹配等原因将造成Windows的崩溃,当Windows 出现死机时,显示器屏幕将变为蓝色,然后出现STOP故障提示信息。下面我们分别介绍通用的STOP故障处理方法和特殊的STOP故障排除。

       é€šç”¨STOP故障处理

       1.首先使用新版杀毒软件检查计算机上是否有病毒。

       2.如果Windows 可以启动,请检查“事件查看器”中的信息,以确定导致故障的设备或驱动程序。启动“事件查看器”的方法是:“开始”\“设置”\“控制面板”\“管理工具”\“事件查看器”\“系统日志”。

       3.如果不能启动计算机,试着用“安全模式”或“最后一次正确的配置”启动计算机,然后删除或禁用新安装的附加程序或驱动程序。如果用“安全模式”启动不了计算机,可使用修复控制台。修复控制台可以禁用一些服务、重新命名设备驱动程序、检修引导扇区或主引导记录。

       4.拆下新安装的硬件设备(RAM、适配卡、硬盘、调制解调器等等)。

       5.确保已经更新了硬件设备的驱动程序,以及系统有最新的BIOS。

       6.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。

       7.检查Microsoft兼容硬件列表(HCL),确保所有的硬件和驱动程序都与Windows兼容。Hcl.txt在Windows CD-ROM的\Support文件夹中。

       8.在BIOS中禁用内存缓存功能。

       9.重新启动计算机,在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。(注:使用“最后一次正确的配置”的方式启动计算机,计算机的所有设置被重置为最后一次成功启动时的配置。)

       .如果能够访问Web,请进入/ntserver/,单击“Support”/“Search Knowledge Base”,在“Type your keywords here”处,输入“stop”和相应的号码(如出现STOP消息“stop:0xA”,可在此输入“stop0xA”),按Enter键,就可以找出所出现的STOP问题的解决方法。(E文)

       éƒ¨åˆ†STOP代码

       STOP消息 0xA故障(刚加入新设备时)

       é€šå¸¸åŽŸå›  驱动程序使用了不正常的内存地址。

       1.在安装过程中,屏幕上提示“安装程序正在检查计算机硬件配置”时,按F5,根据提示选择合适的计算机类型。例如,如果计算机是单处理器,请选择“标准PC”。

       2.在BIOS中禁用内存缓存功能。

       3.拆下所有适配卡,并断开所有不是启动计算机所必需的硬件设备,再重新安装Windows。

       4.如果系统配有SCSI适配卡,请向适配卡销售商索取最新的Windows驱动程序,禁用同步协商功能,检查终结头和设备的SCSI ID号。

       5.如果系统配有IDE设备,设IDE端口为Primary。检查IDE设备的Master/Slave/Only设置。除了硬盘,拆下其它所有的IDE设备。

       6.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。

       7.检查Microsoft兼容硬件列表(HCL),确保所有的硬件和驱动程序都与Windows兼容。

       8.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       STOP消息 0xE故障

       1.检查是否有充分的磁盘空间,尤其是新安装。

       2.禁用STOP消息中显示的驱动程序和所有新安装的驱动程序。

       3.如果所使用的视频驱动程序不是Microsoft提供的,试着切换到标准VGA驱动程序或者由Win支持的合适的驱动程序。

       4.确保系统有最新的BIOS。

       5.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       STOP消息 0x和0x故障

       é€šå¸¸åŽŸå›  严重的驱动器碎片、超载的文件I/O、第三方的驱动器镜像软件或者一些防病毒软件出错。

       1.禁用一些防病毒软件或者备份程序,禁用所有碎片整理应用程序。

       2.运行CHKDSK /f 检修硬盘驱动器,然后重新启动计算机。

       3.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       STOP消息 0xE故障

       é€šå¸¸åŽŸå›  系统内存中的奇偶校验错误。

       1.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。

       2.在BIOS中禁用内存缓存功能。

       3.试着用“安全模式”启动。如果“安全模式”可启动计算机,试着更改为标准VGA驱动程序。如果这不能解决问题,可能须要用另外的视频适配卡。“兼容硬件列表”中列出了兼容的视频适配卡。

       4.确保已经更新了硬件设备的驱动程序,以及系统有最新的BIOS。

       5.拆下一些新安装的硬件(RAM、适配器、硬盘、调制解调器等等)。

       6.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       STOP消息 0xF故障

       é€šå¸¸åŽŸå›  驱动程序没有被完全清除。

       åˆ é™¤ä¸€äº›æ–°å®‰è£…的软件,包括备份工具或磁盘工具,例如碎片整理和防病毒软件。

       STOP消息 0x故障

       é€šå¸¸åŽŸå›  在容错集的主驱动器中发生错误。

       1.用Windows 引导软盘,从镜像(第二个)系统驱动器启动计算机。

       2.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       STOP消息 0xB故障

       é€šå¸¸åŽŸå›  在I/O系统的初始化过程中出现问题(通常是引导驱动器或文件系统)。

       1.检查计算机上是否有病毒。这个STOP消息通常在引导扇区有病毒时出现。

       2.使用“修复控制台”来修复驱动器。

       3.拆下新安装的硬盘驱动器或控制卡。

       4.如果系统配有SCSI适配卡,请向适配卡销售商索取最新的Windows驱动程序,禁用同步协商功能,检查终结头和设备的SCSI ID号。

       5.如果系统配有IDE设备,设IDE端口为Primary。检查IDE设备的Master/Slave/Only设置。除了硬盘,拆下其它所有的IDE设备。

       6.运行CHKDSK。如果Windows 不能启动CHKDSK,则必须把硬盘拆下并连接到另一个Windows系统上,然后用CHKDSK命令检查该硬盘。

       7.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       STOP消息 0xF故障

       é€šå¸¸åŽŸå›  硬件或软件问题;常见的原因是硬件失效。

       1.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。这个STOP消息经常出现在错误或误配内存的情况下。

       2.在BIOS中禁用内存缓存功能。

       3.试着拆下或替换硬件:RAM、控制器、适配器、调制解调器和其它外围设备。

       4.检查Microsoft兼容硬件列表(HCL),确保所有的硬件和驱动程序都与Windows兼容。这个问题可能是由于不兼容的主板引起的。

       5.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

       è§£å†³è“å±ä¹‹å·¥å…·ç¯‡:

       "两手抓,两手都要硬",针对 "蓝屏"现象除了在硬件方面改善你的系统硬件环境外,"软环境"的建设也不可忽视,就我们所知道的一些工具介绍给你,当然,可能还有更多的好工具,不妨平时多留意!

       RAM Idle--让蓝屏消失

       ä¸ç®¡æ˜¯æ›¾ç»è¿œåŽ»çš„DOS时代,还是如日中天的Windows时代,作为系统资源中最重要的一项——内存资源,一直都是电脑爱好者们最为头疼的事情。虽然现在主板上的内存插槽越来越多,内存的价钱也越来越低,但无论怎样,还是有很多朋友的内存资源时常不够用,以至于系统性能无法正常发挥。究其原因,主要是由于Windows操作系统不能有效地对内存资源进行管理,导致大量内存资源被白白占用,从而使系统性能大幅度降低,造成程序锁死、系统挂起等烦人的问题。因此,不少专门用来对内存资源进行管理的工具软件也就应运而生,而今天要介绍的RAM Idle则是这类软件中的佼佼者。

       ä¸€ã€å®‰è£…

       é¦–先用Winzip等软件将下载得到的压缩包解压,然后点击Setup.exe文件,在弹出的对话框中选择【是】即可开始安装RAM Idle(如图1)。和大多数Windows应用程序一样,RAM Idle的安装过程很简单,只需要一路点击【Next】即可完成。

       äºŒã€ 使用

       RAM Idle的主要功能是在系统空闲的时候按照用户设置自动释放回收一定数量的内存,从而避免因Windows系统不足而造成的内存资源枯竭问题,并大幅提高系统性能与稳定性。

       ä¿—话说:工欲善其事,必先利其器,使用RAM Idle也是一样,只有设置合理,它才能更好的对内存资源进行管理。下面就请大家点击【开始】-【程序】-【RAM Idle】-【Configuration】打开RAM Idle设置界面(如图2)和我一起认识下RAM Idle的设置选项

       1. 【Main】选项卡:为软件的主要设置部分,包括以下几个内容:

       Â·Target Free RAM:设置到达最小剩余内存时,RAM Idle所要尝试恢复的内存数量。

       Â·Minimum Free RAM:设置最小剩余内存数量,当达到这个数值的时候,RAM Idle将会自动恢复内存资源。

       Â·Disable the CPU usage detection:选中此项后,RAM Idle恢复内存的时候将不再检测CPU占用率,不过只是在你的CPU占用率总是显示%的时候才需要选中。一般情况下我们不用选中该项,【Recover RAM if only……】中可以设置恢复内存时的最高CPU占用率,也就是说只有CPU占用率低于设定数值时,RAM Idle才可以恢复内存,否则,不予恢复。

       Â·Free up……if free RAM below %:设置剩余内存少于总内存%的时候,每隔多少时间恢复多少数量的内存。

       Â·Pop up menu free……:设置弹出菜单中手动恢复内存部分的三个恢复数值。

       2. 【Options】选项卡:主要包括总在最前面、随Windows启动而启动、隐藏系统托盘图标等一些常规设置。

       3. 【Gator】选项卡:一个填表软件的简要介绍和下载链接。

       4. 【About】选项卡:显示当前系统的内存资源信息(如图3)

       RAM Idle释放内存共有两种方法,一种是当剩余内存少于总内存%的时候,按照设置每隔一段时间自动释放一定数量的内存(设置方法见上);一种是在系统托盘的RAM Idle图标上点击鼠标右键,使用弹出菜单(如图4)中的三个选项快速手动释放一定数量的内存(设置方法见上)。

       ä¸‰ã€ 小结

       ä¸ŽåŒç±»è½¯ä»¶ç›¸æ¯”,RAM Idle基本综合了该类软件的所有精华,具有无可比拟的强大内存管理能力。首先RAM Idle可以自动释放内存资源,并且优化时间快,效率高。其次RAM Idle设置方便,功能齐备,并且占用系统资源少,可在系统较为空闲的时候运行。另外,该软件还具有多种方便且实用的小功能,如重新启动,关机,挂起等。

       è™½ç„¶MemMAX、FREERAM、RAMFIX等软件也各有特色,但由于这样或者那样的缺点,比如不能自动优化、占用系统资源太高、优化效率低下、使用繁琐等,使得它们很难超越RAM Idle。

CEAC1CEEE2CA9BDFC

       å¯èƒ½æ˜¯ç±»ä¼¼äºŽmd5的加密算法

       ---------------

       md5的全称是message-digest algorithm 5(信息-摘要算法),在年代初由mit laboratory for computer science和rsa data security inc的ronald l. rivest开发出来,经md2、md3和md4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。不管是md2、md4还是md5,它们都需要获得一个随机长度的信息并产生一个位的信息摘要。虽然这些算法的结构或多或少有些相似,但md2的设计与md4和md5完全不同,那是因为md2是为8位机器做过设计优化的,而md4和md5却是面向位的电脑。这三个算法的描述和c语言源代码在internet rfcs 中有详细的描述(h++p://www.ietf.org/rfc/rfc.txt),这是一份最权威的文档,由ronald l. rivest在年8月向ieft提交。

       rivest在年开发出md2算法。在这个算法中,首先对信息进行数据补位,使信息的字节长度是的倍数。然后,以一个位的检验和追加到信息末尾。并且根据这个新产生的信息计算出散列值。后来,rogier和chauvaud发现如果忽略了检验和将产生md2冲突。md2算法的加密后结果是唯一的--既没有重复。

       ä¸ºäº†åŠ å¼ºç®—法的安全性,rivest在年又开发出md4算法。md4算法同样需要填补信息以确保信息的字节长度加上后能被整除(信息字节长度mod = )。然后,一个以位二进制表示的信息的最初长度被添加进来。信息被处理成位damg?rd/merkle迭代结构的区块,而且每个区块要通过三个不同步骤的处理。den boer和bosselaers以及其他人很快的发现了攻击md4版本中第一步和第三步的漏洞。dobbertin向大家演示了如何利用一部普通的个人电脑在几分钟内找到md4完整版本中的冲突(这个冲突实际上是一种漏洞,它将导致对不同的内容进行加密却可能得到相同的加密后结果)。毫无疑问,md4就此被淘汰掉了。

       å°½ç®¡md4算法在安全上有个这么大的漏洞,但它对在其后才被开发出来的好几种信息安全加密算法的出现却有着不可忽视的引导作用。除了md5以外,其中比较有名的还有sha-1、ripe-md以及haval等。

       ä¸€å¹´ä»¥åŽï¼Œå³å¹´ï¼Œrivest开发出技术上更为趋近成熟的md5算法。它在md4的基础上增加了"安全-带子"(safety-belts)的概念。虽然md5比md4稍微慢一些,但却更为安全。这个算法很明显的由四个和md4设计有少许不同的步骤组成。在md5算法中,信息-摘要的大小和填充的必要条件与md4完全相同。den boer和bosselaers曾发现md5算法中的假冲突(pseudo-collisions),但除此之外就没有其他被发现的加密后结果了。

       van oorschot和wiener曾经考虑过一个在散列中暴力搜寻冲突的函数(brute-force hash function),而且他们猜测一个被设计专门用来搜索md5冲突的机器(这台机器在年的制造成本大约是一百万美元)可以平均每天就找到一个冲突。但单从年到年这年间,竟没有出现替代md5算法的md6或被叫做其他什么名字的新算法这一点,我们就可以看出这个瑕疵并没有太多的影响md5的安全性。上面所有这些都不足以成为md5的在实际应用中的问题。并且,由于md5算法的使用不需要支付任何版权费用的,所以在一般的情况下(非绝密应用领域。但即便是应用在绝密领域内,md5也不失为一种非常优秀的中间技术),md5怎么都应该算得上是非常安全的了。

       ç®—法的应用

       md5的典型应用是对一段信息(message)产生信息摘要(message-digest),以防止被篡改。比如,在unix下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如:

       md5 (tanajiya.tar.gz) = 0cab9c0fade

       è¿™å°±æ˜¯tanajiya.tar.gz文件的数字签名。md5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的md5信息摘要。如果在以后传播这个文件的过程中,无论文件的内容发生了任何形式的改变(包括人为修改或者下载过程中线路不稳定引起的传输错误等),只要你对这个文件重新计算md5时就会发现信息摘要不相同,由此可以确定你得到的只是一个不正确的文件。如果再有一个第三方的认证机构,用md5还可以防止文件作者的"抵赖",这就是所谓的数字签名应用。

       md5还广泛用于加密和解密技术上。比如在unix系统中用户的密码就是以md5(或其它类似的算法)经加密后存储在文件系统中。当用户登录的时候,系统把用户输入的密码计算成md5值,然后再去和保存在文件系统中的md5值进行比较,进而确定输入的密码是否正确。通过这样的步骤,系统在并不知道用户密码的明码的情况下就可以确定用户登录系统的合法性。这不但可以避免用户的密码被具有系统管理员权限的用户知道,而且还在一定程度上增加了密码被破解的难度。

       æ­£æ˜¯å› ä¸ºè¿™ä¸ªåŽŸå› ï¼ŒçŽ°åœ¨è¢«é»‘客使用最多的一种破译密码的方法就是一种被称为"跑字典"的方法。有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用md5程序计算出这些字典项的md5值,然后再用目标的md5值在这个字典中检索。我们假设密码的最大长度为8位字节(8 bytes),同时密码只能是字母和数字,共++=个字符,排列组合出的字典的项数则是p(,1)+p(,2)….+p(,8),那也已经是一个很天文的数字了,存储这个字典就需要tb级的磁盘阵列,而且这种方法还有一个前提,就是能获得目标账户的密码md5值的情况下才可以。这种加密技术被广泛的应用于unix系统中,这也是为什么unix系统比一般操作系统更为坚固一个重要原因。

       ç®—法描述

       å¯¹md5算法简要的叙述可以为:md5以位分组来处理输入的信息,且每一分组又被划分为个位子分组,经过了一系列的处理后,算法的输出由四个位分组组成,将这四个位分组级联后将生成一个位散列值。

       åœ¨md5算法中,首先需要对信息进行填充,使其字节长度对求余的结果等于。因此,信息的字节长度(bits length)将被扩展至n*+,即n*+个字节(bytes),n为一个正整数。填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面的条件时才停止用0对信息的填充。然后,在在这个结果后面附加一个以位二进制表示的填充前信息长度。经过这两步的处理,现在的信息字节长度=n*++=(n+1)*,即长度恰好是的整数倍。这样做的原因是为满足后面处理中对信息长度的要求。

       md5中有四个位被称作链接变量(chaining variable)的整数参数,他们分别为:a=0x,b=0xabcdef,c=0xfedcba,d=0x。

       å½“设置好这四个链接变量后,就开始进入算法的四轮循环运算。循环的次数是信息中位信息分组的数目。

       å°†ä¸Šé¢å››ä¸ªé“¾æŽ¥å˜é‡å¤åˆ¶åˆ°å¦å¤–四个变量中:a到a,b到b,c到c,d到d。

       ä¸»å¾ªçŽ¯æœ‰å››è½®ï¼ˆmd4只有三轮),每轮循环都很相似。第一轮进行次操作。每次操作对a、b、c和d中的其中三个作一次非线性函数运算,然后将所得结果加上第四个变量,文本的一个子分组和一个常数。再将所得结果向右环移一个不定的数,并加上a、b、c或d中之一。最后用该结果取代a、b、c或d中之一。

       ä»¥ä¸€ä¸‹æ˜¯æ¯æ¬¡æ“ä½œä¸­ç”¨åˆ°çš„四个非线性函数(每轮一个)。

       f(x,y,z) =(x&y)|((~x)&z)

       g(x,y,z) =(x&z)|(y&(~z))

       h(x,y,z) =x^y^z

       i(x,y,z)=y^(x|(~z))

       ï¼ˆ&是与,|是或,~是非,^是异或)

       è¿™å››ä¸ªå‡½æ•°çš„说明:如果x、y和z的对应位是独立和均匀的,那么结果的每一位也应是独立和均匀的。

       f是一个逐位运算的函数。即,如果x,那么y,否则z。函数h是逐位奇偶操作符。

       å‡è®¾mj表示消息的第j个子分组(从0到),<<

       ff(a,b,c,d,mj,s,ti)表示a=b+((a+(f(b,c,d)+mj+ti)<< gg(a,b,c,d,mj,s,ti)表示a=b+((a+(g(b,c,d)+mj+ti)<< hh(a,b,c,d,mj,s,ti)表示a=b+((a+(h(b,c,d)+mj+ti)<< ii(a,b,c,d,mj,s,ti)表示a=b+((a+(i(b,c,d)+mj+ti)<<

       è¿™å››è½®ï¼ˆæ­¥ï¼‰æ˜¯ï¼š

       ç¬¬ä¸€è½®

       ff(a,b,c,d,m0,7,0xdaa)

       ff(d,a,b,c,m1,,0xe8c7b)

       ff(c,d,a,b,m2,,0xdb)

       ff(b,c,d,a,m3,,0xc1bdceee)

       ff(a,b,c,d,m4,7,0xfc0faf)

       ff(d,a,b,c,m5,,0xca)

       ff(c,d,a,b,m6,,0xa)

       ff(b,c,d,a,m7,,0xfd)

       ff(a,b,c,d,m8,7,0xd8)

       ff(d,a,b,c,m9,,0x8bf7af)

       ff(c,d,a,b,m,,0xffff5bb1)

       ff(b,c,d,a,m,,0xcd7be)

       ff(a,b,c,d,m,7,0x6b)

       ff(d,a,b,c,m,,0xfd)

       ff(c,d,a,b,m,,0xae)

       ff(b,c,d,a,m,,0xb)

       ç¬¬äºŒè½®

       gg(a,b,c,d,m1,5,0xfe)

       gg(d,a,b,c,m6,9,0xcb)

       gg(c,d,a,b,m,,0xe5a)

       gg(b,c,d,a,m0,,0xe9b6c7aa)

       gg(a,b,c,d,m5,5,0xdfd)

       gg(d,a,b,c,m,9,0x)

       gg(c,d,a,b,m,,0xd8a1e)

       gg(b,c,d,a,m4,,0xe7d3fbc8)

       gg(a,b,c,d,m9,5,0xe1cde6)

       gg(d,a,b,c,m,9,0xcd6)

       gg(c,d,a,b,m3,,0xf4dd)

       gg(b,c,d,a,m8,,0xaed)

       gg(a,b,c,d,m,5,0xa9e3e)

       gg(d,a,b,c,m2,9,0xfcefa3f8)

       gg(c,d,a,b,m7,,0xfd9)

       gg(b,c,d,a,m,,0x8d2a4c8a)

       ç¬¬ä¸‰è½®

       hh(a,b,c,d,m5,4,0xfffa)

       hh(d,a,b,c,m8,,0xf)

       hh(c,d,a,b,m,,0x6d9d)

       hh(b,c,d,a,m,,0xfdec)

       hh(a,b,c,d,m1,4,0xa4beea)

       hh(d,a,b,c,m4,,0x4bdecfa9)

       hh(c,d,a,b,m7,,0xf6bb4b)

       hh(b,c,d,a,m,,0xbebfbc)

       hh(a,b,c,d,m,4,0xb7ec6)

       hh(d,a,b,c,m0,,0xeaafa)

       hh(c,d,a,b,m3,,0xd4ef)

       hh(b,c,d,a,m6,,0xd)

       hh(a,b,c,d,m9,4,0xd9d4d)

       hh(d,a,b,c,m,,0xe6dbe5)

       hh(c,d,a,b,m,,0x1facf8)

       hh(b,c,d,a,m2,,0xc4ac)

       ç¬¬å››è½®

       ii(a,b,c,d,m0,6,0xf)

       ii(d,a,b,c,m7,,0xaff)

       ii(c,d,a,b,m,,0xaba7)

       ii(b,c,d,a,m5,,0xfca)

       ii(a,b,c,d,m,6,0xbc3)

       ii(d,a,b,c,m3,,0x8f0ccc)

       ii(c,d,a,b,m,,0xffeffd)

       ii(b,c,d,a,m1,,0xdd1)

       ii(a,b,c,d,m8,6,0x6fae4f)

       ii(d,a,b,c,m,,0xfe2ce6e0)

       ii(c,d,a,b,m6,,0xa)

       ii(b,c,d,a,m,,0x4ea1)

       ii(a,b,c,d,m4,6,0xfe)

       ii(d,a,b,c,m,,0xbd3af)

       ii(c,d,a,b,m2,,0x2ad7d2bb)

       ii(b,c,d,a,m9,,0xebd)

       å¸¸æ•°ti可以如下选择:

       åœ¨ç¬¬i步中,ti是*abs(sin(i))的整数部分,i的单位是弧度。(等于2的次方)

       æ‰€æœ‰è¿™äº›å®Œæˆä¹‹åŽï¼Œå°†a、b、c、d分别加上a、b、c、d。然后用下一分组数据继续运行算法,最后的输出是a、b、c和d的级联。

       å½“你按照我上面所说的方法实现md5算法以后,你可以用以下几个信息对你做出来的程序作一个简单的测试,看看程序有没有错误。

       md5 ("") = dd8cdfbeecfe

       md5 ("a") = 0ccb9c0f1b6ace

       md5 ("abc") = cdfb0df7def

       md5 ("message digest") = fbd7cbda2faafd0

       md5 ("abcdefghijklmnopqrstuvwxyz") = c3fcd3dedfbccaeb

       md5 ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz") =

       dabdd9f5ac2c9fd9f

       md5 ("

       ") = edf4abe3cacda2eba

       å¦‚果你用上面的信息分别对你做的md5算法实例做测试,最后得出的结论和标准答案完全一样,那我就要在这里象你道一声祝贺了。要知道,我的程序在第一次编译成功的时候是没有得出和上面相同的结果的。

       md5的安全性

       md5相对md4所作的改进:

       1. 增加了第四轮;

       2. 每一步均有唯一的加法常数;

       3. 为减弱第二轮中函数g的对称性从(x&y)|(x&z)|(y&z)变为(x&z)|(y&(~z));

       4. 第一步加上了上一步的结果,这将引起更快的雪崩效应;

       5. 改变了第二轮和第三轮中访问消息子分组的次序,使其更不相似;

       6. 近似优化了每一轮中的循环左移位移量以实现更快的雪崩效应。各轮的位移量互不相同。

       [color=red]简单的说:

       MD5叫信息-摘要算法,是一种密码的算法,它可以对任何文件产生一个唯一的MD5验证码,每个文件的MD5码就如同每个人的指纹一样,都是不同的,这样,一旦这个文件在传输过程中,其内容被损坏或者被修改的话,那么这个文件的MD5码就会发生变化,通过对文件MD5的验证,可以得知获得的文件是否完整。