技术r
计算机系统实现自动维护和诊断的技术。实施维护诊断自动化的主要软件为功能检查程序和自动诊断程序。功能检查程序针对计算机系统各种部件各自的全部微观功能,以严格的数据图形或动作重试进行考查测试并比较其结果的正误,确定部件工作是否正常。自动诊断根据部件的具体逻辑,以特定的算法生成大量的测试数据和故障字典,利用诊断机或其他特设硬件作为“硬核”,对故障部件有关的测试路径进行布数启动,并回收测试结果。对有故障者查询故障字典以确定故障部位。自动诊断目前尚只能解决单个坏死故障。由于受到电路本身和测试算法等的限制,诊断的覆盖面一般在90%左右,故障定位范围约在1~3个插件之内(见特征分析仪)。r
④系统应用技术r
计算机系统的应用十分广泛。程序设计自动化和软件工程技术是与应用有普遍关系的两个方面。程序设计自动化,即用计算机自动设计程序,是使计算机得以推广的必要条件。早期的计算机靠人工以机器指令编写程序,费时费力,容易出错,阅读和调试修改均十分困难。50年代初期开始使用的汇编语言,与机器指令一一对应以记忆码和符号地址替代机器指令的操作码和地址码,再通过翻译器产生机器指令,有效地改善了程序设计的条件,虽然它是低级语言,但因可人工编写出高质量的程序而仍保有其生命力。50年代中期出现的高级程序设计语言,可根据课题算法的规律与特点,定义严格的语言和描述方法,使设计者可以用语言形式编制出课题的源程序,然后通过编译程序,自动编出以机器指令形式表达的目的程序,大大提高了程序设计的劳动生产率。高级程序设计语言已多达数百种,其中主要者有BASIC、FORTRAN、ALGOL、COBOL、PASCAL等。由于语言繁多又互不相通,程序移植困难,造成很大浪费。 因此,人们对创造统一语言的问题相当重视美国ADA语言就是一例。接近自然语言的算法语言也在探索之中。软件生产工程化对计算机技术的发展具有重大意义。软件生产方式比较落后,以人工为主,自动化程度较差。 设计、修改、维护费用昂贵,产品错误率较高,以致发生所谓“软件危机”。因此,在60年代末提出了“软件工程”,即将软件生产视为一种工程或工业,使软件生产采取与硬件相类似的形式,创立软件设计、调试、维护、生产组织管理等的科学方法,制定软件标准,研制软件生产的工具等。软件工程的主要内容包括软件开发的方法论和软件开发的支援系统。方法论研究程序设计的原理、原则和技术,借以生产出价格合理、可靠和易读的程序。支援系统r