计算机程序,按照运行时,程序所在硬件,可以分类:
单片机程序,也就是程序在单片机内运行,一般用于储物柜,自主贩卖机。
无屏幕或小屏幕电脑,也就是各种道路监控,各种交通安全监测(测速,测距,测重)。
服务器,也就是超越个人家用电脑的硬件性能的硬件环境。
硬件上限有限时,就必须用功能兼容硬件,也就是为了硬件能支持,会放弃很多,要做很多取舍。
硬件上限无限时,就可以用硬件兼容功能,也就是为了功能,会支持很多。
如果创作者,就是维护者,那源代码基本不需要公布出去,比如一些个人网站,比如一些个人设计的小程序。
而如果创作者,不一定是维护者,那就是公事公办的程序,一般要求创作者制作的公司,会要求上传源代码。
程序按照偏重硬件不同,也会有很多不同。
比如有的程序,偏重于使用显卡,显示高画质的内容,例如游戏或三维虚拟加工。
有的程序,偏重于用户交互,比如仓管系统,处理入库,出库,库存盘点,保质期管理,生产计划执行前备料。
有的程序,基本没有本地交互,比如服务器的后台程序,比如木马程序。
程序需要应用的技术有很多。
比如游戏外挂制作者,肯定不会去反汇编和DIRECTX相关的内容,毕竟这是游戏的像素渲染方面的内容,和外挂设计无关,除非外挂是一些画质增强外挂,也就要求游戏外挂制作者,需要能够通过过滤掉和DIRECTX画质渲染相关的反汇编内容的自制工具,从而对非画质渲染方面的内容进行反汇编,从而加快外挂制作效率。
对于一些机密或有产权保护的程序,会采用各种防止反汇编的技术,然而这些技术,在硬件级编程的病毒测试机,或软件行为安全监测机内,完全就是一目了然。