标题：丫丫软件
监控组态
监控组态软件是伴随着计算机技术的突飞猛进发展起来的。60年代虽然计算机开始涉足工业过程控制，但由于计算机技术人员缺乏工厂仪表和工业过程的知识，导致计算机工业过程系统在各行业的推广速度比较缓慢。70年代初期，微处理器的出现，促进了计算机控制走向成熟。首先，微处理器在提高计算能力的基础上，大大降低了计算机的硬件成本，缩小了计算机体积，很多从事控制仪表和原来一直就从事工业控制计算机的公司先后推出了新型控制系统，这一历史时期较有代表性的就是1975年美国Honeywell公司推出的世界上第一套DCS TDC－2000，而随后的20年间，DCS及其计算机控制技术日趋成熟，得到了广泛应用，此时的DCS已具有较丰富的软件，包括：计算机系统软件（操作系统）、组态软件、控制软件、操作站软件、其它辅助软件（如通讯软件）等。 这一阶段虽然DCS技术、市场发展迅速，但软件仍是专用和封闭的，除了在功能上不断加强外，软件成本一直居高不下，造成DCS在中小型项目上的单位成本过高，使一些中小型应用项目不得不放弃使用DCS。80年代中后期，随着个人计算机的普及和开放系统（Open System)概念的推广，基于个人计算机的监控系统开始进入市场，并发展壮大。组态软件做为个人计算机监控系统的重要组成部分，比PC监控的硬件系统具有更为广阔的发展空间。这是因为，第一，很多DCS和PLC厂家主动公开通讯协议，加入“PC监控”的阵营。目前，几乎所有的PLC和一半以上的DCS都使用PC做为操作站。第二，由于PC监控大大降低了系统成本，使得市场空间得到扩大，从无人值守的远程监视（如防盗报警、江河汛情监视、环境监控、电信线路监控、交通管制与监控、矿井报警等）、数据采集与计量（如居民水电气表的自动抄表、铁道信号采集与记录等）、数据分析（如汽车/机车自动测试、机组/设备参数测试、医疗化验仪器设备实时数据采集、虚拟仪器、生产线产品质量抽检等）到过程控制，几乎无处不用。第三，各类智能仪表、调节器和PC－ Based设备可与组态软件构筑完整的低成本自动化系统，具有广阔的市场空间。第四，各类嵌入式系统和现场总线的异军突起，把组态软件推到了自动化系统主力军的位置，组态软件越来越成为工业自动化系统中的灵魂。 组态软件之所以同时得到用户和DCS厂商的认可有以下几个原因： 1. 个人计算机操作系统日趋稳定可靠，实时处理能力增强且价格便宜。 2. 个人计算机的软件及开发工具丰富，使组态软件的功能强大，开发周期相应缩短，软件升级和维护也较方便。 目前的多数组态软件都是在Windos3.1或3.2操作系统下逐渐成熟起来的，国外少数组态软件可以在OS/2或Unix环境下运行。目前绝大多数组态软件都运行在Windows98/NT环境下。较理想的环境是WindowsNT或Windows2000操作系统，因为其内核是原来的VMS的变种，可靠性和实时性都好于Windows98。 组态软件的开发工具以C++为主，也有少数开发商使用Delphi或C++Builder。一般来讲，使用C++开发的产品运行效率更高，程序代码较短，运行速度更快，但开发周期要长一些，其它开发工具则相反。
软件历史
1990 Autodesk 成立多媒体部，推出了第一个动画工作――3D Studio软件
1996 Autodesk 成立Kinetix 分部负责3ds的发行
1999 Autodesk 收购Discreet Logic 公司，并与Kinetix 合并成立了新的Discreet 分部
DOS 版本的3D Studio 诞生在80 年代末，那时只要有一台386 DX 以上的微机就可以圆一个电脑设计师的梦。但是进入90年代后，PC 业及Windows 9x 操作系统的进步，使DOS 下的设计软件在颜色深度、内存、渲染和速度上存在严重不足，同时，基于工作站的大型三维设计软件Softimage、Lightwave、Wavefront 等在电影特技行业的成功使3D Studio 的设计者决心迎头赶上。与前述软件不同，3D Studio 从DOS 向Windows的移植要困难得多，而3D Studio MAX的开发则几乎从零开始。
3D Studio MAX 1.0
1996年4月，3D Studio MAX 1.0 诞生了，这是3D Studio系列的第一个windows版本。
3D Studio MAX R2
1997年8月4日在加利福尼亚洛杉矶Siggraph 97上正式发布。新的软件不仅具有超过以往3D Studio MAX几倍的性能，而且还支持各种三维图形应用程序开发接口,包括OpenGL和Direct3D。3D Studio MAX针对Intel Pentium Pro和PentiumⅡ处理器进行了优化，特别适合Intel Pentium多处理器系统。
3D Studio MAX R3
在1999年4月加利福尼亚圣何塞游戏开发者会议上正式发布。这是带有Kinetix标志的最后版本。
Discreet 3ds max 4
新奥尔良Siggraph 2000上发布。从4.0版开始，软件名称改写为小写的3ds max。3ds max 4 主要在角色动画制作方面有了较大提高。
Discreet 3ds max 5
2002年6月26，27日分别在波兰，西雅图，华盛顿等地举办的3dsmax5演示会上发布。这是第一版本支持早先版本的插件格式，3dsmax 4的插件可以用在5上，不用重新编写。3DS Max 5.0在动画制作、纹理、场景管理工具、建模、灯光等方面都有所提高，加入了骨头工具(Bone Tools)和重新设计的UV工具(UV Tools)。
Discreet 3ds max 6
2003年7月，Discreet发布了著名的3D软件3ds max的新版本3ds max 6 。主要是集成了mental ray渲染器。
Discreet 3ds max 7
Discreet公司于2004年8月3日发布。这个版本是基于3ds max 6的核心上进化的。3ds max 7为了满足业内对威力强大而且使用方便的非线性动画工具的需求，集成了获奖的高级人物动作工具套件character studio。并且这个版本开始3dsmax正式支持法线贴图技术。
Autodesk 3ds Max 8
2005年10月11日，Autodesk宣布其3ds Max软件的最新版本3ds Max 8正式发售。
Autodesk 3ds Max 9
Autodesk在Siggraph 2006 User Group大会上正式公布3ds Max 9 与Maya 8 首次发布包含32位和64位的版本。
Autodesk 3ds Max 2008
2007年10月17号在加利福尼亚圣地亚哥Siggraph 2007上发布，该版本正式支持Windows Vista操作系统。
Vista? 32 位和64 位操作系统以及Microsoft DirectX® 10 平台正式兼容的第一个完整版本。
Autodesk 3ds Max 2009
旧金山, 2008年2月12日电— 今天Autodesk, Inc. (NASDAQ: ADSK) 宣布推出Autodesk 3ds Max 建模、动画和渲染软件的两个新版本。该软件是用于开发游戏的领先的创造工具。该公司推出了面向娱乐专业人士的Autodesk 3ds Max 2009 软件，同时也首次推出3ds Max Design 2009 软件，这是一款专门为建筑师、设计师以及可视化专业人士而量身定制的3D 应用软件。Autodesk 3ds Max 的两个版本均提供了新的渲染功能、增强了与包括Revit 软件在内的行业标准产品之间的互通性，以及更多的节省大量时间的动画和制图工作流工具。3ds Max Design 2009 还提供了灯光模拟和分析技术。
Autodesk 3ds Max 2010
2009年4月，3ds Max 2010终于浮出水面，Autodesk最近几年的并购、收购行为让它瞬间拥有了几乎全部的动画多媒体软件工具，而且其他机械、建筑领域也在进行着同样的工作，在这些收购的背后，意味着“整合”。早在去年年底美国拉斯维加斯的Autodesk ATC大会上，Autodesk就首度公布了Max2010的相关情况。
2010版特色功能：石墨(Graphite)建模工具材质总管(Material Explorer)xView网格分析工具(xView Mesh Analyzer)视口画布(Viewport Canvas)ProBooleans增强增强的UVW UnwrapProOptimizer支援mental mill/MetaSL增强的预览功能改良的曝光照明分析减少GI动画闪烁：mental ray渲染表面贴图增强的场景浏览器(Scene Explorer)支持Flight Studio格式，等等众多新功能……
Autodesk 3ds Max 2011
Autodesk 公司近日宣布今年四月份将正式发布其3ds Max软件的最新版本3ds Max2011，新版软件将加入以下几项新功能：
-新增Slate工具：这是一种新的基于节点的材质编辑器，使用这种编辑器，软件用户可以更加方便地编辑材质
-Quicksilver硬件渲染引擎：新款多线程渲染引擎，可以利用CPU和GPU来为绘图场景提供渲染加速，速度要比旧款引擎提升10倍左右。
-新增能让用户在viewport视窗直接观察纹理，材质贴图效果的功能，用户无需为了挑选合适的纹理或材质贴图而反复渲染
-新增3ds Max Composite合成贴图工具：新的3ds Max Composite合成贴图工具可支持动态高光（HDR）等特效，该工具基于Autodesk公司的Toxik软件。Autodesk公司数字娱乐部门的副总裁Stig Gruman表示：“我们推出3ds Max2011的首要目标是要提升用户日常创作工作的效率。我们对3ds Max2011的核心部件进行了重新设计，推出了新的基于节点的材质编辑器工具，并为这款软件加入了包括Quicksilver 硬件渲染等许多新功能，在3ds Max2011的帮助下，3D创作者将能在更短的时间内创作出更高质量的3D作品。”
3ds Max 2011已于2011年4月份发布，新版软件的售价定为3495美元，软件的升级价则为1745美元。
软件破解思路浅析
软件的版权问题一直是让人关注的安全问题，Cracker的出现让软件版权保护在某种意义上遇到了挑战，0day不断发布的keygen让所有的共享软件作者或商业软件组织感到头疼，随着国内计算机爱好者的不断增多，民间很多Cracker的躁动和不安掀起了狂热的破解潮，国内众多破解组织也争相成立，CCG\BCG\FCG等破解组织让广大网友目不暇接，这些在外人眼中神秘的侠客，对于共享软件破解又是如何做得呢？
Cracker蓄势待发
我们不得而知的是，每个人在破解每一款软件的具体方法，但我们能够了解到的是，他们大多采用了很多破解技巧和思路，这在各种破解论坛上Cracker发表的破解文章中就可看到。
对于及其初级的破解者来说，w32dasm和WinHEX是个不错的选择。首先说说WinHEX，这是一款非常优秀的16进制文件编辑与磁盘编辑软件，可做Hex与ASCII码编辑修改，并具备RAM编辑功能，对于早期的共享软件来说，它们在内存中明目张胆的对照验证码的方式让WinHEX大放异彩，通过在注册错误结果出示后，在其将正确信息与错误信息对照时，将key揪出来是WinHEX的看家本领，遗憾的是，随着重启验证机制的大面积应用和加密混合对照方式的出现，WinHEX更多的则充当了编辑修改工具。
第2页：暴力破解
此时，技术门槛在简单的提高的同时，让那些急于破解的Cracker更加直接——暴力破解方式。这里的暴力破解非密码学中的穷举破解方式，它是通过改变源程序的运转流程，修改新的跳转，达到突破验证的目的。w32dasm正是这方面的好手！
W32Dasm是一个静态反汇编工具，也是破解人常用的工具之一，它也被比作破解人的屠龙刀。网上被修改过的W32Dasm版本不胜枚举，可见其受欢迎程度，那么它又是如何进行破解的呢？
一般来说，通过运行破解软件，在输入你的姓名和任意注册码后去注册，通常都会提示错误信息，将错误提示信息记下来，然后在串式参考中找到错误提示信息或可能是正确的提示信息双击鼠标左键，此时向上寻找，都可以得到JNE\JE之类的跳转，这之前正是注册码验证的过程，而Cracker要做的就是将其JMP或者EB掉，让程序反向。
一切听起来似乎都很顺利，事实上破解工作要难做的多，因为你不知道要面临何种问题，壳就算一个！加壳是指对目标文件资源的压缩，是保护文件的常用手段。加壳过的程序可以直接运行，但是不能查看源代码，要经过脱壳才可以查看源代码。这也是为什么在W32Dasm下无法查看很多程序的串式参考的原因了。脱壳的方法有很多，包括工具和手动，暂且不表，毕竟本文不想讨论如何破解软件。
第3页：动态绝杀
以上这些不过是很被动的方法，可以说现今的加密保护技术，防住静态破解是非常容易的。于是被Cracker推崇的动态破解方法就更显得宝贵了。为什么这么说呢？这种方法可谓以不变应万变，但都要有一定的汇编基础和对API方面的理解（特指Windows系统）。
著名的动态调试软件SoftICE就是其中一款。SoftICE源自Compuware，在DOS环境中，是最佳调试程序之一；在Windows系统中，更是独占鳌头。所以，许多解密者对其倍加珍爱，将其生产者NuMega奉为最推崇的公司。
而TRW2000则是国内软件的一支奇葩，小巧方便的软件带来了更为简洁的调试体验，一切尽在掌握，二者可谓各有千秋，但随着GUI要求越来越高，目前一款名为Ollydbg的软件后来居上，成为众多调试软件中的佼佼者，由于其动静兼备，界面友好，且在系统中的表现也很稳定，让众多Cracker爱不释手。
动态破解可谓高深莫测，灵活度非常高，这也是Cracker的“亢龙有悔”绝招，一般的软件到此都会难逃一劫，我们暂且只能描述到这里。但笔者此文目的并非抨击逆向工程者，虽然Cracker属于这个范畴，但至少并非所有的逆向工程者都以商业利益为目的，很多人成为了反病毒工程师，很多人在互相切磋技艺的同时提高了自己的计算机水平（他们一般使用叫CrackMe的demo程序练手）。这些人的贡献和学习的态度是毋庸置疑的。
在奥运来临之际，国家也更注重知识产权的保护，尽管目前Cracker还有存活市场，但随着制度体系的完善和用户素质水平的提高，盗版将不会充斥着整个软件业，版权的保护将不会被这些Cracker所随意冲击。
[1]