0

关于投票
关于CS的一点交流
有喜欢CS的玩家吗?
系统分类: 自由话题
用户分类: 读书笔记
标签: 无标签
来源: 原创
发表评论 阅读全文(261) | 回复(0)

1

关于投票
说说

我觉得Windows已经变成了一个怪物。

很多当初良好的设计理念和技巧已经为层层的妥协性和兼容性考虑搞得面目全非。它的内核变得如此复杂甚至于浏览器已经变成了内核中最中枢的部分之一。它的庞大成为臃肿和脆弱而不是强大的代名词。这个操作系统究竟还能否胜任我们在上面进行创新和开拓,我很怀疑。

Vista历时5年,千呼万唤,始见真身。但本来有的很多前端理念最后都只能割爱,比如最为可惜的就是提出transaction based filesystem的WinFX。关于各种内幕,人们问的最多的就是:5年的开发过程究竟发生了什么,为什么需要那么久,而又为什么最后还是砍掉了如此多的功能。我不想信口开河,只是个人认为,整个Windows系统长期积累的复杂性已经让很多有意义有魄力有革命性的创新无法在上面自由发挥。人们经常发现,你要这样做,就会影响到这个,然后会牵连到那个,最后这里有那么一个潜伏的bug就引爆了。在这样一个不是磐石一块而如迷宫一般的地基上建造出来的只能是脆弱不稳定臭虫满天飞的系统,微软的同事们也许会明白我在说什么,Vista开发到2年半后的那次Reset就是最好的证明。

最近自己碰到的两件事:

1. 我们组的project进入了最后部署阶段。就是这样一个还不算复杂的Alpha版的网络软件系统,我们在制作安装程序的时候居然用到了不下8种不同的Microsoft technology,什么Active Directory, IIS Diag, Virtual Directory, Application Pool, Winhttpcertcfg, Webstore, EventLog 粉墨登场琳琅满目不一而足。写setup的那位倒是好好秀了一把他对微软技术的熟悉程度,但我们都一致地为这样的本末倒置无颜以对。我最后揶揄地说:这个setup程序好像都要比我们真正的软件还要大了。

2. 我昨天发现IIS有这么一个限制:IIS不允许request url的路径里有冒号(colon, " : " ),一旦request url的路径里有冒号,IIS直接400 Bad Request。这个真是迭迭怪事,最后我在网上还真搜到了解释:

IIS does not permit colons in the URL. This is because the NTFS file system
considers a colon to be a special character that's used to denote alternate
streams within a file. If your example URL below were handled by the static
file handler in IIS, it would attemps to open the stream called "blah"
within a file called "blah" in the "script.cfm" directory under wwwroot.

More specifically, without this limitation, if a client were to request
http://www.example.com/script.cfm::$data, then the contents of the
script.cfm file would get sent to the client instead of invoking ColdFusion <http://forums.devshed.com/>
to process script.cfm.

If you want to prevent IIS from parsing your data, then put it either in the
query string or the entity body. A colon would be allowed in either of
those places.

Thank you,
-Wade A. Hilmo,
-Microsoft

大意是说因为NTFS文件系统的一个限制,所以IIS不接受request url path里的冒号,如果一定要用冒号,请放到query string里(就是问号?后面跟的东西)或者用request content body。回答的Wade Hilmo现在是IIS的Dev Lead。

我真的觉得悲哀,因为NTFS文件系统的一个潜在的安全漏洞,IIS居然可以做出违反RFC的事情来。RFC 1738明确说:

httpurl        = "http://" hostport [ "/" hpath [ "?" search ]]
hpath          = hsegment *[ "/" hsegment ]
hsegment       = *[ uchar | ";" | ":" | "@" | "&" | "=" ]

冒号完全是合法的url字符。

一个是文件系统,一个是web服务器,风马牛不相及的东西居然也能这么剪不断理还乱,我彻底败了。

就因为这一个小小的限制,我们需要重新定义我们的协议,然后牵连到我们的Windows Live Partner都要重新定义他们的接口。而且我们还要一直注意这个问题,如果将来onboard的partner在url中用了冒号,我们要想想会不会出问题(就我们所知,确实已经发现有这样潜在的partner在他们的协议中用了冒号)。我们又要.... 还要么?我是觉得够了。

===========================================================================

这是在新的Laptop上的新的Vista系统里写的第一篇blog,原本不应该这么攻击自己公司的产品的,而且说实在话,用了这些时间感觉Vista也是还不错的系统,除了那个可笑之极的Cancel or Allow的对话框(不是说不好问,但问一遍就够了吧,还没完没了地问了)。不过我真是觉得Windows系统已经到了一个很危险的阶段,而与此同时Linux和Mac OS的长足进步更是一日千里(我至今记得第一次看到Ubuntu和OS Tiger时惊艳的记忆,尤其是OS Tiger,我对这个基于unix内核的系统爱不释手)。我们应该有勇气像当初苹果一样,壮士断腕,重起炉灶,而不是还是如此这般3天一小修5天一大补地搞了。Windows真的是很危险,我们不能再靠搞搞花哨的用户界面来理所当然地认为用户还会掏钱买我们的产品。

有人说,重起炉灶,说得轻巧,这么多以前的用户怎么办?都不管了?

不,当然要管。利用virtualization提供向前兼容支持,保留底层的内核,重新开发核心的安全组件,那个奇怪的registry应该好好重新设计了,而网络时代使用越来越频繁的digital certification management,digital rights management,等等功能都要重新简化设计。这当然是很复杂很复杂的事情,但关键的是改变态度,办法是人想的,但态度决定一切。

系统分类: 生活点滴
用户分类: 读书笔记
标签: 无标签
来源: 转贴
发表评论 阅读全文(489) | 回复(1)

1

关于投票
关于DDS的简单介绍
DDSDSP(数字信号处理)一样,是一项关键的数字化技术。DDS是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。

  一块DDS芯片中主要包括频率控制寄存器高速相位累加器正弦计算器三个部分(如Q2220)。频率控制寄存器可以串行或并行的方式装载并寄存用户输入的频率控制码;而相位累加器根据频率控制码在每个时钟周期内进行相位累加,得到一个相位值;正弦计算器则对该相位值计算数字化正弦波幅度(芯片一般通过查表得到)。DDS芯片输出的一般是数字化的正弦波,因此还需经过高速D/A转换器和低通滤波器才能得到一个可用的模拟频率信号。

 另外,有些DDS芯片还具有调幅、调频和调相等调制功能及片内D/A变换器(如AD7008)。

DDS有如下优点: 频率分辨率高,输出频点多;⑵频率切换速度快,可达us量级;⑶ 频率切换时相位连续;⑷ 可以输出宽带正交信号;⑸ 输出相位噪声低,对参考频率源的相位噪声有改善作用;⑹可以产生任意波形;⑺ 全数字化实现,便于集成,体积小,重量轻,因此八十年代以来各国都在研制和发展各自的DDS产品,如美国QUALCOMM公司的Q2334Q2220STANFORD公司的STEL-1175STEL-1180AD公司的AD7008AD9850AD9854等。这些DDS芯片的时钟频率从几十兆赫兹到几百兆赫兹不等,芯片从一般功能到集成有D/A转换器和正交调制器。

系统分类: DSP
用户分类: 读书笔记
标签: 无标签
来源: 无分类
发表评论 阅读全文(1148) | 回复(0)
总共 , 当前 /