为啥有注册表?
说起来原来window3,1时代都是用的ini文件,到了95换用注册表。
那么这个有什么好处呢?
1。集中管理
所有程序的设置都在同一个程序里面搞定。而使用ini文件需要到每个程序自己的目录去寻找和设置。
反驳意见:
这样大大增加了管理难度。虽然在同一个界面,可是寻找相关设置位置却变得困难了。当然,这个注册表是有路径的,还有查找功能。但是大家应该都知道这东西查起来有多慢多麻烦……而且同一个程序的设置会分散在不同的路径里面……
实例:
我们可以参考forefox的about:config,这个的设置搜寻和编辑以及设置界面可以说十分迅速而友好。也就是说虽然设想没错,但是regedit的界面和性能并没有达到设计要求。
当然,微软也许会说这东西根本就不是用来给普通人用的……
2:更多的类型,更复杂的管理
注册表有路径,有二进制类型……
完全成立。
3:便于迁移
也许有人会说这不是反了吗?绿色软件都是追求的不写入注册表?
不过微软本来就不是设计给把软件在机器间搬来搬去的情况……对于把程序在同一台机器的不同硬盘路径间移动就不必修改配置文件了。
反驳:使用相对路径的话完全不成问题。
实际情况:如大家所见……
那么,注册表还有什么问题呢?
1:安全
注册表对所有用户是开放的……没有文件系统的管理权限。木马能够进入系统靠的就是写入系统的注册表让自己开机启动……
2:清理
注册表残留是个老大难问题,它总是越来越大……没有特殊工具谁也不敢乱删除
3:备份
注册表一旦损坏,基本就是启动不能……当然系统由注册表备份这个工具,而且是自动的。
不过连续损坏两次的话……
当然在备份上这点可以看到整合的优点,一次可以全部备份。相对的灵活性降低,如果我修改了A不想保留B的修改的话……当然这情况还是很少的。
在unix系统中,用户配置和系统配置是分开的。用户配置放在自己的根目录下。系统配置普通用户无权修改……
从这点看,windows,包括NT server系列,还是没有为多用户好好着想。根本设计思路是不同的……
在NT中如果以管理员安装软件,以普通用户运行程序,会有很多的权限问题。偏偏很多软间还非要管理员权限才能安装。还有安装软件或者驱动必定要重启系统这个毛病……
unix的服务之类基本都设计成可以强行中断,然后重新启动,windows下大多有这样或者那样的尾巴……其实并不是做不到,而是在用户权限管理和对待软件的思维方式上就根本不同。
这是刚看了一个争论linux vs windows的讨论串之间的细节后想到的。其实说起来很多windowser说linux像win31……真不知他们到底真的用过没有,还是仅仅在98年用过之后就再也没有碰了……再说mac os才是公认最漂亮的吧?OSX可是在unix上跑的……这说明linux要做到并不难,难得是有钱去做这个。geekers毕竟还是关心创新技术胜于维护稳定性和漂亮……
不过说起来linux的本地化问题确实是老大难……软件不规范也是老大难……
倒是windows垄断条件下兼容还有很多问题就有点那个了……真是彼此彼此。在大公司没有投入的地方linux确实还很缺乏。但是现在、钱已经大笔投入,基本都是时间问题了……
0 Comments:
发表评论
<< Home