计算机系统概述 计算机是一种用于高速计算的电子机器,可以进行数值运算、逻辑判断,还有存储记忆功能,能够接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速的处理,然后把处理的结果输出的现代化智能电子设备。 日常生活中常见的台式机、笔记本、手机等等都属于计算机。 计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成。 软件是运行在硬件之上,而硬件的好坏会直接影响软件运行的性能。 计算机通过软硬件的共同协作就可以完成日常常见的任务,例如听歌、看电影、购物、聊天等等。 计算机硬件系统 计算机硬件系统主要由主机和外部设备组成。 主机主要是包含中央处理器和内存储器。 中央处理器主要由运算器和控制器组成,实现数据的数值计算、逻辑判断和其他设备控制。 而内存储器分为RAM和ROM,其中RAM(Random Access Memory)表示随机存储内存,程序运行时指令和数据都会被加载到内存中,这种存储器在断电时将会丢失其存储的内容。而ROM(Read-Only Memory)表示只读内存,是一种只能读出事先存储数据的固态半导体存储器。 外部设备主要包含外部存储器、输入设备、输出设备组成。常见的外存储器包含移动硬盘U盘等等。外部存储器通常用于大容量存储数据,IO性能比内存要低的多,但是只要硬件设备不坏的情况下能够永久存储数据,而常见的输入设备包含鼠标键盘等等,常见的输出设备包含声卡、显卡等等。网卡也是属于输入输出设备的一种,主要用于网络上的数据接收和发送。 在后期程序排查错误时除了要考虑程序本身的错误以外,还要考虑计算机硬件故障,例如内存不足,磁盘写满,网络不通等问题 每个计算机组件的IO性能也各不相同,CPU、内存、磁盘都遵循容量越大、IO性能越差的特点。 在后期优化程序时需要考虑程序时间复杂度和空间复杂度的问题。 计算机软件系统 软件的出现实现了人和计算机更好的交互,它是由开发人员采用某种编程语言(C/C++/Java等等)编写的一系列指令以及不同业务场景产生的数据组成。 通常将软件分为系统软件和应用软件 系统软件驱动程序、操作系统、语言处理程序等都是属于系统软件。驱动程序是硬件厂商使用编程语言(C/C++)编写的程序,在使用硬件(例如打印机、显卡、声卡等等)前必须安装对应的驱动程序。操作系统是负责通过驱动程序管理硬件资源,同时给应用软件提供运行平台,目前主流的操作系统有Windows,Linux,macOS,Android,iOS,鸿蒙。语言处理程序是用于将编程语言编写的源程序编译或者解释成对应平台的机器语言的程序。 应用软件微信、支付宝、淘宝、WPS等等都是属于应用软件,它们都是运行在操作系统之上的。运行在不同操作系统之上的软件交互方式也不一样,Linux上的软件通常是使用字符界面的交互方式,运行在Windows,macOS上的软件通常是以鼠标、键盘操作的交互方式,运行在Android,iOS上的软件通常是以手势触控、语音等交互方式。