本文目录一览:

have+obj.+inf. obj. inf. 这表示什么 这个句型是什么意思 inf.

obj. = object 宾语

inf. = infinitive 不定式

这个句型是:

have+宾语+不定式(作定语)+不定式的宾语+不定式(作定语或宾补或间接宾语)

例句:

I have something (obj.) to ask (inf.) the student (obj.) to do (inf.).

He didn't have the chance (obj.) to realize (inf.) his dream (obj.) to fly (inf.).

She had the presence of mind (obj.) to let (inf.) it (obj.) go (inf.).

(let后面跟的不定式不带to)

go类型转换

type_name(expression)

float跟int可以互转,但是会丢失所有精度。

func AppendBool(dst []byte, b bool) []byte

AppendBool 根据 b 的值将“true”或“false”附加到 dst 并返回扩展缓冲区。

func AppendFloat(dst []byte, f float64, fmt byte, prec, bitSize int) []byte

AppendFloat 将由 FormatFloat 生成的浮点数 f 的字符串形式附加到 dst 并返回扩展缓冲区。

func AppendInt(dst []byte, i int64, base int) []byte

AppendInt 将由 FormatInt 生成的整数i的字符串形式附加到 dst 并返回扩展缓冲区。

func AppendQuote(dst []byte, s string) []byte

AppendQuote 将由 Quote 生成的代表 s 的双引号 Go 字符串文字附加到 dst 并返回扩展缓冲区。

func AppendQuoteRune(dst []byte, r rune) []byte

AppendQuoteRune 将由 QuoteRune 生成的表示符文的单引号 Go 字符文字附加到 dst 并返回扩展缓冲区。

func AppendQuoteRuneToASCII(dst []byte, r rune) []byte

AppendQuoteRuneToASCII 将由 QuoteRuneToASCII 生成的代表该符文的单引号 Go 字符文字附加到 dst 并返回扩展缓冲区。

func AppendQuoteRuneToGraphic(dst []byte, r rune) []byte

AppendQuoteRuneToGraphic 将由 QuoteRuneToGraphic 生成的表示符文的单引号 Go 字符文字附加到 dst 并返回扩展缓冲区。

func AppendQuoteToASCII(dst []byte, s string) []byte

AppendQuoteToASCII 将由 QuoteToASCII 生成的代表 s 的双引号 Go 字符串文字附加到 dst 并返回扩展缓冲区。

func AppendQuoteToGraphic(dst []byte, s string) []byte

AppendQuoteToGraphic 将由 QuoteToGraphic 生成的代表 s 的双引号 Go 字符串文字附加到 dst 并返回扩展缓冲区。

func AppendUint(dst []byte, i uint64, base int) []byte

AppendUint 将由 FormatUint 生成的无符号整数 i 的字符串形式附加到 dst 并返回扩展缓冲区。

func Atoi(s string) (int, error)

Atoi 返回 ParseInt(s, 10, 0) 转换为 int 类型的结果。

func CanBackquote(s string) bool

CanBackquote 报告字符串 s 是否可以不改变为单行反引号字符串,而不包含 tab 以外的控制字符。

func FormatBool(b bool) string

FormatBool 根据 b 的值返回“true”或“false”

func FormatFloat(f float64, fmt byte, prec, bitSize int) string

FormatFloat 根据格式 fmt 和 precision prec 将浮点数f转换为字符串。它将结果进行四舍五入,假设原始数据是从 bitSize 位的浮点值获得的(float32为32,float64为64)。

格式 fmt 是 'b'(-ddddp±ddd,二进制指数),'e'(-d.dddde±dd,十进制指数),'E'(-d.ddddE±dd,十进制指数),'f'(-ddd.dddd,无指数),'g'('e'表示大指数,'f'表示否则)或 'G'('E'表示大指数,否则'f')。

precision prec 控制由 'e','E','f','g' 和 'G' 格式打印的位数(不包括指数)。对于 'e','E' 和 'f',它是小数点后的位数。对于 'g' 和 'G' 这是总位数。特殊精度-1使用必需的最小位数,以便 ParseFloat 完全返回 f 。

func FormatInt(i int64, base int) string

FormatInt 返回给定基数中的i的字符串表示,对于2 = base = 36.结果对于数字值 = 10使用小写字母 'a' 到 'z' 。

func FormatUint(i uint64, base int) string

FormatUint 返回给定基数中的 i 的字符串表示,对于2 = base = 36.结果对于数字值 = 10使用小写字母 'a' 到 'z' 。

func IsGraphic(r rune) bool

IsGraphic 报告符文是否被 Unicode 定义为 Graphic。这些字符包括类别 L,M,N,P,S 和 Z 中的字母,标记,数字,标点,符号和空格。

func IsPrint(r rune) bool

IsPrint 报告该符文是否被 Go 定义为可打印,其定义与 unicode.IsPrint 相同:字母,数字,标点,符号和 ASCII 空格。

func Itoa(i int) string

Itoa 是 FormatInt(int64(i), 10) 的缩写。

func ParseBool(str string) (bool, error)

ParseBool 返回字符串表示的布尔值。它接受1,t,T,TRUE,true,True,0,f,F,FALSE,false,False。任何其他值都会返回错误。

func ParseFloat(s string, bitSize int) (float64, error)

ParseFloat 将字符串 s 转换为浮点数,精度由 bitSize:32指定,float32为64; float64为64。当 bitSize = 32时,结果仍然具有 float64 类型,但可以在不更改其值的情况下将其转换为 float32。

如果s格式良好且接近有效的浮点数,则 ParseFloat 返回使用 IEEE754 无偏舍入舍入的最近浮点数。

ParseFloat 返回的错误具有具体类型 * NumError 并包含 err.Num = s。

如果 s 在语法上不是格式良好的,ParseFloat 返回 err.Err = ErrSyntax。

如果 s 在语法上格式良好,但距离给定大小的最大浮点数大于1/2 ULP,则 ParseFloat 返回 f =±Inf,err.Err = ErrRange。

func ParseInt(s string, base int, bitSize int) (i int64, err error)

ParseInt 解释给定基础(2到36)中的字符串 s 并返回相应的值 i。如果 base == 0,则基数由字符串的前缀隐含:base 16代表“0x”,base 8代表“0”,否则以10为底数。

bitSize 参数指定结果必须适合的整数类型。位大小 0,8,16,32 和 64 对应于 int,int8,int16,int32 和 int64。

ParseInt 返回的错误具有具体类型 * NumError 并包含err.Num = s。如果s为空或包含无效数字,则 err.Err = ErrSyntax,返回值为0; 如果与s对应的值不能用给定大小的有符号整数表示,则 err.Err = ErrRange,返回的值是相应 bitSize 和符号的最大幅度整数。

func ParseUint(s string, base int, bitSize int) (uint64, error)

ParseUint 就像 ParseInt,但是对于无符号数字。

func Quote(s string) string

Quote 返回一个双引号的 Go 字符串字面表示s。返回的字符串使用 Go 转义序列 (\t, \n, \xFF, \u0100) 作为 IsPrint 定义的控制字符和非可打印字符。

func QuoteRune(r rune) string

QuoteRune 返回一个表示符文的单引号 Go 字符。返回的字符串使用 Go 转义序列(\t, \n, \xFF, \u0100) 作为 IsPrint 定义的控制字符和非可打印字符。

func QuoteRuneToASCII(r rune) string

QuoteRuneToASCII 返回表示符文的单引号 Go 字符。对于非 ASCII 字符和 IsPrint 定义的非可打印字符,返回的字符串使用 Go 转义序列 (\t, \n, \xFF, \u0100)。

func QuoteRuneToGraphic(r rune) string

QuoteRuneToGraphic 返回代表符文的单引号 Go 字符。对于非 ASCII 字符和 IsGraphic 定义的非可打印字符,返回的字符串使用Go转义序列 (\t, \n, \xFF, \u0100)。

func QuoteToASCII(s string) string

QuoteToASCII 返回一个代表 s 的双引号 Go 字符串。对于非 ASCII 字符和 IsPrint 定义的非可打印字符,返回的字符串使用 Go 转义序列 (\t, \n, \xFF, \u0100) 。

func QuoteToGraphic(s string) string

QuoteToGraphic 返回一个代表 s 的双引号 Go 字符串。对于非 ASCII 字符和 IsGraphic 定义的非可打印字符,返回的字符串使用 Go 转义序列 (\t, \n, \xFF, \u0100)。

func Unquote(s string) (string, error)

Unquote 将 s 解释为单引号,双引号或反引号的 Go 字符串文字,返回引用的字符串值。(如果 s 是单引号,它将是一个 Go 字符字面量; Unquote 会返回相应的一个字符字符串。)

Golang中的限速器 time/rate

在高并发的系统中,限流已作为必不可少的功能,而常见的限流算法有:计数器、滑动窗口、令牌桶、漏斗(漏桶)。其中滑动窗口算法、令牌桶和漏斗算法应用最为广泛。

非常很好理解,就像有一个漏斗容器一样,漏斗上面一直往容器里倒水(请求),漏斗下方以 固定速率 一直流出(消费)。如果漏斗容器满的情况下,再倒入的水就会溢出,此时表示新的请求将被丢弃。可以看到这种算法在应对大的突发流量时,会造成部分请求弃用丢失。

可以看出漏斗算法能强行限制数据的传输速率。

令牌桶算法

从某种意义上来说,令牌算法是对漏斗算法的一种改进。对于很多应用场景来说,除了要求能够限制数据的平均传输速率外,还要求允许某种程度的突发情况。这时候漏桶算法可能就不合适了,令牌桶算法更为适合。

令牌桶算法是指一个固定大小的桶,可以存放的令牌的最大个数也是固定的。此算法以一种 固定速率 不断的往桶中存放令牌,而每次请求调用前必须先从桶中获取令牌才可以。否则进行拒绝或等待,直到获取到有效令牌为止。如果桶内的令牌数量已达到桶的最大允许上限的话,则丢弃令牌。

Golang标准库中的限制算法是基于令牌桶算法(Token Bucket) 实现的,库名为golang.org/x/time/rate

对于限流器的消费方式有三种,分别为 Allow()、 Wait()和 Reserve()。前两种内部调用的都是Reserve() ,每个都对应一个XXXN()的方法。如Allow()是AllowN(t, 1)的简写方式。

主要用来限速控制并发事件,采用令牌池算法实现。

使用 NewLimiter(r Limit, b int) 函数创建限速器,令牌桶容量为b。初始化状态下桶是满的,即桶里装有b 个令牌,以后再以每秒往里面填充 r 个令牌。

允许声明容量为0的限速器,此时将会拒绝所有操作。

// As a special case, if r == Inf (the infinite rate), b is ignored.

有一种特殊情况,就是 r == Inf 时,此时b参数将被忽略。

Limiter 提供了三个主要函数 Allow, Reserve, 和 Wait. 大部分时候使用Wait。其中 AllowN, ReserveN 和 WaitN 允许消费n个令牌。

每个方法都可以消费一个令牌,当没有可用令牌时,三个方法的处理方式不一样

AllowN方法表示,截止在某一时刻,目前桶中数目是否至少为n个。如果条件满足,则从桶中消费n个token,同时返回true。反之不消费Token,返回false。

使用场景:一般用在如果请求速率过快,直接拒绝请求的情况

输出

当使用Wait方法消费Token时,如果此时桶内Token数量不足(小于N),那么Wait方法将会阻塞一段时间,直至Token满足条件。否则直接返回。

// 可以看到Wait方法有一个context参数。我们可以设置context的Deadline或者Timeout,来决定此次Wait的最长时间。

输出

// 此方法有一点复杂,它返回的是一个*Reservation类型,后续操作主要针对的全是这个类型

// 判断限制器是否能够在指定时间提供指定N个请求令牌。

// 如果Reservation.OK()为true,则表示需要等待一段时间才可以提供,其中Reservation.Delay()返回需要的延时时间。

// 如果Reservation.OK()为false,则Delay返回InfDuration, 此时不想等待的话,可以调用 Cancel()取消此次操作并归还使用的token

输出

go.exe 病毒问题

go.exe病毒是logo_1.exe的变种,两种病毒差不多一样。先到C:\WINDOWS\system\logo_1.exe将文件删除,做一个同名文件夹,然后改了属性,进入注册表删掉相关项目,重启还是有病毒进程运行,并且免疫方法失效,文件夹的名字改为logo_1.exe.tmp

用搜索一查发现除系统盘下均有go.exe, Autorun.inf两个文件,生成时间都一样,

解决方法如下:

1、 先进入安全模式;

2、 进入各盘删除go.exe, Autorun.inf两个文件,分别建立go.exe和Autorun.inf两个文件夹,点击文件夹右键,将属性改为只读、存档、隐藏;

3、 进入C:\WINDOWS\system\目录,将logo_1.exe用unlocker.exe删除,同时把SYSTEM32.vxd,SYSTEM32.dat两个文件删除,分别建立logo_1.exe和logo_1.exe。tmp两个文件夹,点击文件夹右键,将属性改为只读、存档、隐藏;

4、 进入注册表,就是开始-运行-regedit,用编辑-查找命令,搜索logo_1.exe,将如下选项删除,

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]

ntaskldrC:\WINDOWS\system\logo_1.exe [N/A]

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run]

ntaskldrC:\WINDOWS\system\logo_1.exe [N/A]

5、 点击重启,再次进入安全模式检查C:\WINDOWS\system\目录下是否还有logo_1.exe文件,不是你建的文件夹,如果有说明上面的步骤不彻底,只好重做,当然检查是否还有SYSTEM32.vxd,SYSTEM32.dat。如果没有,接着检查各盘下是否还有go.exe, Autorun.inf文件,如果还是你建的文件夹,那么就留着它,这就是该病毒的免疫方法;

6、 重启进入正常模式,再检查一遍,应该没问题了;

7、 上网观察效果,如果没有异常,立马升级杀毒软件,全面杀毒,因为该病毒改动杀毒软件的某些功能,杀毒软件在染毒期间处于半瘫痪状态,查不出这个病毒感染过的执行文件,这一点很重要!

8、 杀毒软件把感染过的文件也清除掉了,你就重装软件吧;

9、 如果不想做第8、9条的话,就等EXE被感染的文件的专杀(修复)工具出现吧。

呵呵!祝所有中病毒的人,可以解脱!

golang 一个包内允许有重复的函数吗

golang一个包内不允许有重复的函数。

golang是Google开发的一种编译型,可平行化,并具有垃圾回收功能的编程语言。

golang与C相似,但也有不同之处:

函数多了一个关键字 func;

第一个{必须紧跟在括号的后面,不能新起一行。

函数print 是golang 的内置函数。prinf则是stdio中的库函数;

主函数必须是package main;

结束的分号可以不写。当然一行就好几句的话就不能省了。

GO浏览器为何访问速度如此的慢

WINXP优化精髓

加快开机与关机的速度:

①选“开始\运行”,键入Regedit,展开HKEY_CURRENT_USER\Control Panel\Desktop,将字符串值“HungAppTimeout”的数值更改为200,再将字符串值“WaitToKillAppTimeout”的数值数据更改为1000;

②另在HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control下,将字符串值“HungAppTimeout”的数值数据更改为200,将字符串值“WaitToKillServiceTimeout”的数值数据更改为〔1000〕;

③使用微软 Bootvis.exe 优化启动速度。我们到微软官方网站先下载 bootVis.exe,然后解压后运行bootvis.exe,之后在Trace下选next boot和driver delays等,此后XP会重新启动,并将记录启动数据产生成BIN的文件。再在“file\open中打开这个文件,在Trace下选Optimize system即可。

提示:此优化需时颇长,请耐心等待。

清除注册表内不用的DLL文件:

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKKEY_LOCAL_MACHINE〕\〔SOFTWARE〕\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\〔Explorer〕

增加一个机码〔AlwaysUnloadDLL〕默认值为〔1〕

如默认值设定为〔0〕则代表停用此功能

加快宽频连接速度:

在〔开始〕\〔运行〕\键入〔regedit〕\在〔HKEY_LOCAL_MACHINE〕\〔SOFTWARE〕\〔Policies〕\〔Microsoft〕 \〔Windows〕

增加一个名为〔Psched〕的机码

在〔Psched〕右面窗口增加一个 Dword 值〔NonBestEffortLimit〕数值数据为〔0〕

『仅适用用 Windows XP 家用版本』

加快菜单显示速度:

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKEY_CURRENT_USER〕\〔Control Panel〕\〔Desktop〕\将字符串值〔MenuShowDelay〕的数值数据更改为〔0〕

调整后如觉得菜单显示速度太快而不适应者可将〔MenuShowDelay〕的数值数据更改为〔200〕

重新启动生效 。

加快自动更新率:

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔System〕\〔CurrentControlSet〕\〔Control〕\〔Update〕\将 Dword〔UpdateMode〕的数值数据更改为〔0〕。重新启动生效。

关闭启动时加载不需要的程序:

如开机时有太多的程序要运行会影响开机的速度,先检查哪些些档案会在开机时运行

在〔开始〕\〔运行〕\键入〔msconfig〕\选〔启动〕

在启动内的程序是代表开机时要运行的程序,如需暂时停止运行某些程序便取消在〔□〕的〔X〕符号便可,如想恢复开机时运行此程序在〔□〕内加回〔X〕符号便可。

停用不需要的服务:

在〔开始〕\〔运行〕\键入〔services.msc〕打开服务窗口

检查右边窗口将不需要的服务在〔启动类型〕内选〔已禁止〕;再在〔服务状态〕中选〔停用〕

善用 CPU 的 L2 Cache 加快整体效能:

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔SYSTEM〕\〔CurrentControlSet〕\〔Control〕\〔SessionManager〕\在〔MemoryManagement〕的右边窗口将〔SecondLevelDataCache〕的数值数据更改为与 CPU L2 Cache 相同的十进制数值

例:P4 1.6G 的 L2 Cache 为 256Kb,数值数据更改为十进制数值 256

有关 L2 Cache 的数值并非如某些不负责任的网页乱抄过来,例如 P4 1.6G 的 L2 Cache 为 256Kb,但 P4 1.6GA 的 L2 Cache 为 512Kb

读者可以通过网络查询到有关 CPU 的 L2 Cache 的资料。

在启动计算机时运行 Defrag 程序 :

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔SOFTWARE〕\〔Microsoft〕\〔Dfrg〕\〔BootOptimizefunction 〕

将字符串值〔Enable〕设定为〔Y〕等于开启,而设定为〔N〕等于关闭。

方法一:用 Notepad 打开在 C:\ 目录下的 boot.ini 档案,将内容〔timeout〕的设定值由预设的 30 (秒) 改为要求等待的秒数数字,存盘。

方法二:也可以通过〔开始〕\〔运行〕\键入〔msconfig〕,打开boot.ini 选项,进行秒数的修改。

方法三:右键点击“我的电脑”,选择属性\高级\启动和故障恢复\设置,在此修改启动等待时间。

关闭 XP 内设的烧碟功能:

如果不打算使用此功能可将其关闭,可加快使用 Nero 烧录软件的速度,因为Windows XP 的烧录系统由 Roxio 公司提供 (即与 Easy Cd Creator 同公司)。

在〔控制面板〕\〔管理工具〕\〔服务〕\在右边窗口选〔IMAPI CD-Burning COM Service〕\〔启动类型〕\选〔已停用〕

关机时自动关闭停止响应程序:

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKEY_USERS〕\〔.DEFAULT〕\〔Control Panel〕\在〔Desktop〕右面窗口将〔AutoEndTasks〕的数值资料改为〔1〕

注销或重新启动即可。

移除Windows Messenger:

先用 Wordpad 打开 X:\WINDOWS\inf 下的 sysoc.inf 档案

X=(XP所在的磁盘区)

将内容〔msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,hide,7〕

更改为〔msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,7〕

存档及退出

然后在〔控制面板〕\〔添加或删除程序〕\〔添加/删除 Windows 组件〕\不选〔Windows Messenger〕\〔下一步〕\〔完成〕后便成功移除。

停止“磁盘空间不足”的通知 :

当磁盘驱动器的容量少于 200MB 时 Windows XP 便会发出“磁盘空间不足”的通知

如需停止此功能,可按下面程序更改登录文件

在〔开始〕\〔运行〕\键入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔Software〕\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\在〔Policies〕下增加一个机码名〔Explorer〕(如果已有便不用增加)\在〔Explorer〕增加一个 DWORD 值〔NoLowDiskSpaceChecks〕

数值数据为〔1〕= 停止通知,值数据为〔0〕= 默认值启动通知

关闭 windows 自动更新 :

鼠标右点〔我的电脑〕\〔内容〕\〔自动更新〕

选“关闭自动更新,我要手动更新我的计算机”

关闭启动时窗口标志画面:

在〔开始〕\〔运行〕\键入〔msconfig〕\选〔boot.ini〕

然后在〔启动选项〕内选〔NOGUIBOOT]

重新开机便没有了窗口标志的画面

使用 Windows Media Player 9 播放 DVD 盘:

在〔开始〕\〔运行〕\键入〔DVDPlay〕便会出现 Windows Media Player

按播放 VCD 型式操作便可播放 DVD 了,当然你一定要有 DVDRom 装置

如果还出现问题,在〔开始〕\〔运行〕\键入〔regedit〕\选〔HKEY_CURRENT_USER〕

\〔Software〕\〔Microsoft〕\〔MediaPlayer〕\〔Player〕\在〔Settings〕右边窗口

增加一个字符串值〔EnableDVDUI〕数值数据为〔yes〕

关闭自动重新启动功能:

当 Windows XP 遇到严重问题时便会突然重新开机,按下更改可以取消此功能

在〔开始〕\〔运行〕\键入〔regedit〕\选〔HKEY_LOCAL_MACHINE〕\〔SYSTEM〕

\〔CurrentControlSet〕\〔Control〕\〔CrashControl〕\将〔AutoReboot〕dword 值更改为〔0〕重新开机生效

移除共享文档:

除正常〔我的文档〕及〔共享文档夹〕外,每个用户都会有一个独立的活页夹,

如下设定则只会保留我的活页夹,其余的不会显示出来

在〔开始〕\〔运行〕\键入〔regedit〕\选〔HKEY_LOCAL_MACHINE〕\〔SOFTWARE〕

\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\〔Explorer〕\〔MyComputer〕\〔NameSpace〕\在〔DelegateFolders〕下删除〔{59031a47-3f72-44a7-89c5-5595fe6b30ee}〕机码

取消 IE 自动缩图功能:

Internet Explorer 6 在浏览图片如大出屏幕,图片便会自动缩小如需取消这功能可按如下修改:

在〔开始〕\〔运行〕\键入〔regedit〕\〔HKEY_CURRENT_USER〕\〔Software〕\〔Microsoft〕\〔Internet Explorer〕\在〔Main〕增加一个字符串值〔Enable AutoImageResize〕数据数值为〔NO〕

让 IE6 可以同时下载超过两个档案:

Internet Explorer 6 同时最多只可以下载两个档案,

按下修改可同时下载多达十个档案

在〔开始〕\〔运行〕\键入〔regedit〕\〔HKEY_CURRENT_USER〕\〔\Software〕\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\〔InternetSettings〕

在右边窗口增加下列两个〔Dword〕值

〔MaxConnectionsPer1_0Server〕数值资料为〔0000000a〕即十进制〔10〕

〔MaxConnectionsPerServer〕数值资料为〔0000000a〕即十进制〔10〕

重新启动计算机生效

[转帖]我的WinXP优化之路〔推荐〕

转贴〕我的WinXP优化之路〔推荐〕

为了达到这个目的,我们主要从四个方面入手:

1、减少磁盘空间占用

2、终止不常用的系统服务

3、安全问题

4、另外一些技巧

首先问一下,你是不是很想激活XP,不。。。准确的说你是不是想在ms的站上能够升级。如果答案是肯定的话,那我们就先来探讨一下安装的问题,目前流行的V4、V5、V6版本我还是比较推荐的,尤其是V5和V6这两个。安装的过程中有个序列号的问题,我建议你先在机子上算好,然后用这个序列号安装,通常这样安装的XP都可以到MS的站点自由更新。

如果你是已经安装好的XP了,但用的序列号是里到处流传人人都用的那些,也没关系,我们后面会说用sysrep来重新封装的时候会解决序列号更换的问题。

我假设你已经安装完XP了,come on baby ~~

一、瘦身行动

1、在各种软硬件安装妥当之后,其实XP需要更新文件的时候就很少了。删除系统备份文件吧:开始→运行→sfc.exe /purgecache 近3xxM。

2、删除驱动备份: %windows%\driver cache\i386目录下的driver.cab文件,通常这个文件是76M。

3、偶没有看help的习惯,所以保留着%windows%\help目录下的东西对我来说是一种伤害,呵呵。。。都干掉,近4xM。

4、一会在升级完成后你还会发现%windows%\多了许多类似$NtUninstallQ311889$这些目录,都干掉吧,1x-3xM。

5、正好硬盘中还有win2000/server等,所以顺便把pagefile.sys文件都指向一个地方:控制面板→系统→性能—高级→虚拟内存→更改,注意要点“设置”才会生效。

6、卸载不常用组件:用记事本修改\%windows%\inf\sysoc.inf,用查找/替换功能,在查找框中输入,hide,全部替换为空。这样,就把所有的,hide都去掉了,存盘退出后再运行“添加-删除程序”,就会看见“添加/删除 Windows 组件”中多出不少选项;删除掉游戏啊,码表啊等不用的东西。

7、删除\windows\ime下不用的输入法,8xM。我重新安装了自己用的zrm输入法,赫赫。

8、如果实在空间紧张,启用NTFS的压缩功能,这样还会少用2x% 的空间,不过我没作。

9、关了系统还原,这破功能对我这样常下载、测试软件的人来说简直是灾难,用鼠标右健单击桌面上的“我的电脑”,选择“属性”,找到“系统还原”,选择“在所有驱动器上关闭系统还原”呵呵,又可以省空间了。

10、还有几个文件,挺大的,也没什么用。。。。忘了名字 :( ,刚安装的系统可以用查找功能查找大于50M的文件来看看,应该能找到的。

如果你能按照上面的过程做完,你的原本1.4G的XP,完全可以减少到800以下。

二、加速计划

WinXP的启动会有许多影响速度的功能,尽管ms说已经作最优化处理过,但对我们来说还是有许多可定制之处。我一般是这样来做的。

1、修改注册表的run键,取消那几个不常用的东西,比如Windows Messenger 。启用注册表管理器:开始→运行→Regedit→找到“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\MSMSGS” /BACKGROUND 这个键值,右键→删除,世界清静多了,顺便把那几个什么cfmon的都干掉吧。

2、修改注册表来减少预读取,减少进度条等待时间,效果是进度条跑一圈就进入登录画面了,开始→运行→regedit启动注册表编辑器,找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters, 有一个键EnablePrefetcher把它的数值改为“1”就可以了。另外不常更换硬件的朋友可以在系统属性中把总线设备上面的设备类型设置为none(无)。

3、关闭系统属性中的特效,这可是简单有效的提速良方。点击开始→控制面板→系统→高级→性能→设置→在视觉效果中,设置为调整为最佳性能→确定即可。这样桌面就会和win2000很相似的,我还是挺喜欢XP的蓝色窗口,所以在“在窗口和按钮上使用视觉样式”打上勾,这样既能看到漂亮的蓝色界面,又可以加快速度。

4、我用Windows commadner+Winrar来管理文件,Win XP的ZIP支持对我而言连鸡肋也不如,因为不管我需不需要,开机系统就打开个zip支持,本来就闲少的系统资源又少了一分,点击开始→运行,敲入:“regsvr32 /u zipfldr.dll”双引号中间的,然后回车确认即可,成功的标志是出现个提示窗口,内容大致为:zipfldr.dll中的Dll UnrgisterServer成功。

5、据说XP的一个系统服务Qos,这个调度要占用一定的网络带宽,像我这样的一毛不拔的人是无法忍受的,去掉方法是:开始菜单→运行→键入 gpedit.msc ,出现“组策略”窗口, 展开 "管理模板”→“网络” , 展开 "QoS 数据包调度程序", 在右边窗右键单击“限制可保留带宽" ,在属性中的“设置”中有“限制可保留带宽" ,选择“已禁用”,确定即可。当上述修改完成并应用后,用户在网络连接的属性对话框内的一般属性标签栏中如果能够看到"QoS Packet Scheduler(QoS 数据包调度程序)"。说明修改成功,否则说明修改失败,顺便把网络属性中的那个Qos 协议也一起干掉(卸载)吧。

6、快速浏览局域网络的共享

通常情况下,Windows XP在连接其它计算机时,会全面检查对方机子上所有预定的任务,这个检查会让你等上30秒钟或更多时间。去掉的方法是开始→运行→Regedit→在注册表中找到HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\Explorer\RemoteComputer\NameSpace。在此键值下,会有个{ D6277990-4C6A-11CF-8D87-00AA0060F5BF }键,把它删掉后,重新启动计算机,Windows XP就不再检查预定任务了,hoho~~~ ,速度明显提高啦!

7、关掉调试器Dr. Watson

我好像从win95年代开始一次也没用过这东西,可以这样取消:打开册表,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug子键分支,双击在它下面的Auto键值名称,将其“数值数据”改为0,最后按F5刷新使设置生效,这样就取消它的运行了。沿用这个思路,我们可以把所有具备调试功能的选项取消,比如蓝屏时出现的memory.dmp,在“我的电脑→属性→高级→设置→写入调试信息→选择无”等等。

8、被我终止的服务列表以及相关说明

1)alerter 错误警报

2)automatic updates windows 自动更新

3)background intelligent transfer service 微软说使用空闲的网络带宽传数据

4)clipbook 与远程电脑来共享剪贴板内容,我看还是免了吧

5)Computer browser 说什么要维护网络更新列表

6)DHCP client 我不需要这东西

7)Distributed link tracking client 保持局域网连接更新等信息,偶很少用局域网,这东西占用4M左右内存。

8)Distributed Transaction coordinator 协调xxx,和上面的差不多

9)DNS Client 我不需要这东西

10)Error reporting service 错误报告

11)Event Log 系统日志纪录

12)Fast user switching compatibility 用户切换

13)help and support 帮助

14)Human interface device access 据说是智能设备。。。

15)IMAPI CD-burning COM service 偶不用这个刻碟

16)Indexing service 索引,索引什么呢?

17)Internet Connection Firewall(ICF) ICF防火墙

18)IPSEC Services 这个我不懂,你想知道问Quack去

19)Logical Disk manager administrative service 配置磁盘

20)messenger 好像net send 等东西用的就是这个功能

21)MS software shadow copy provider 卷复制备份的

22)Net Logon 我可不想让黑客远程登录进来,关!

23)Netmeeting remote desktop sharing 我不用netmeeting

24)Network DDE 动态数据交换传输

25)Network DDE DSDM 和上面差不多

26)Network Location Awareness 关,我的机子不作共享

27)NTLM Security support provider-telnet 呵呵,关!

28)Performance logs and alert 将系统状态写日志或发警告

29)Portable media serial number 关!

30)Print Spooler 打印机,不幸的是我的机子不连接Print ~

31) QoS RSVP 关!

32)Remote desktop help session manager 远程帮助服务

33)remote Procedure Call LOCATOR 管理RPC

34)remote registry 远程管理注册表

35)removable storage

36)routing and remote access 我干脆禁用了它

37)security accounts manager 我的系统只是一个客户系统,不用iis。

38)smart card

39)smart card helper 关!!!

40)SSDP Discovery service 我用不到这个

41)system event notification 如果是服务器肯定要记录的

42)system restore service 系统还原服务

43)task scheduler windows 计划服务

44)Telephony 拨号服务,我不拨号还不行吗?

45)telnet

46)terminal services 终端服务

47)uninterruptible power supply UPS,我没有呀

48)universal plug and play device host 太先进了点,用不到

49)upload manager 关了也能传输文件的

50)volume shadow copy 又是备份,晕

51)webclient 没用过

52)Windows Installer MSI服务,我一直关着。

53)windows image acquisition (WIA) 数码设备用的

54)windows management instrumentation driver extensions 关了

55)windows time 时间服务

56)wireless zero configuration 无线网络,偶用不到的

57)WMI perfromance adapter 关!

这里面的一些服务是刚开始就是关的,但我忘了,所以只好把现在系统中关闭的服务基本都列了出来。你根据自己的情况酌情处理吧。

三、我安全吗

多了不谈,基本的共享还是得关的:

修改注册表为以下两个样式:

去除共享

——————————————————————

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters]

"AutoShareServer"=dword:00000000

"AutoSharewks"=dword:00000000

——————————————————————

去除IPC$管理

——————————————————————

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]

"restrictanonymous"=dword:00000001

——————————————————————

或者将上面两个保存成个.REG文件,然后双击导入就可以了。

顺便把不要脸的的3721也屏蔽,在hosts文件中加入:

127.0.0.1 cnsmin.3721.com

127.0.0.1

四、其他技巧

1、给鼠标右键增加个复制到.../移动到...功能

—————————————————————

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers\Copy To]

@="{ C2FBB630-2971-11D1-A18C-00C04FD75D13 }"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers\Move To]

@="{ C2FBB631-2971-11D1-A18C-00C04FD75D13 }"