第1章-1 计算机基础-操作系统

操作系统 计算机基础知识 软件开发 硬件驱动 API 移动操作系统 服务器系统
操作系统是计算机的核心软件,负责管理硬件、软件、内存、文件系统和网络等资源,类比于“大脑”指挥整个系统的运作。它是用户启动设备时运行的首个程序,所有应用程序都需通过操作系统启动,且不能直接操控硬件,而是通过操作系统提供的API接口(如硬件驱动程序)间接操作。主流操作系统包括PC端的Windows、Mac、Linux,以及移动端的iOS和Android。不同操作系统的用户界面、交互方式和API规范各异,第三方应用程序需遵循相应操作系统的开发规范才能运行。Linux常用于服务器,因其安全可靠且通常只有命令行界面。
文章内容
思维导图
常见问题
社交分享

在实际工作中,你有没有经常听到这些令人困惑的词汇?

  1. 需求要上线时,经常听到开发说服务正在部署;

  2. 给开发提数据需求时,经常听到开发说我跑个“脚本”看看结果;

  3. 开发说,老系统跟新系统技术栈不同,不好维护。老系统是用的C++,新系统用的是Java。

接下来将为大家介绍计算机基础知识。

1.1 操作系统

操作系统这个词语相信很多产品经理都听到过,但是具体不了解它到底是做什么的。操作系统类比人的大脑,它就像是一个总司令,有着一套运行处理机制,规定标准的输入和输出,指挥整个身体的运作。

比如用户正在打开某个APP,这时APP会给操作系统发出想要运行应用程序的信号,这时操作系统会检测系统内存、CPU是否充足,如果充足的话就同意运行。

操作系统是用户打开电脑或者手机运行的第一个应用程序。它管控着所有的软件、硬件、文件系统、内存、网络等等。所有应用程序(软件)都要由操作系统来启动,它还有着操作硬件的权限。

那么其他应用程序可以直接操控硬件吗?答案是否定的。所以操作系统把操作硬件的能力抽象出了一套API接口,供给软件去调用,这套API接口也就是我们经常看到的「硬件驱动程序」,比如当你在公司想要使用打印机的时候,往往就要安装打印机驱动程序了。

操作系统有哪些类型呢?目前市面上主流的操作系统有:PC端的Mac操作系统、 和Windows操作系统、Linux操作系统;手机端的IOS、Android操作系统。不同的操作系统也就对应着不同品牌的电脑和手机了。

操作系统一般都会提供界面给用户操作,我们平时用的电脑的主界面就是操作系统的界面,但是也有无界面的操作系统,比如Linux操作系统,它只有命令行,没有UI界面。大多数的服务器使用的都是Linux操作系统,因为它更安全可靠。

那么不同的操作系统有哪些不一样呢?一般来说,不同的操作系统都是由不同的厂商编写的应用程序。

它们不一样的两个点是:第一,它们提供的用户操作界面和交互不同,比如我们平时用的Mac和Windows、IOS和Android,它们的界面和交互还是有挺大区别的。

第二,它们对外提供的API也不同。这里的API是就是接口的意思,是对外提供的一套规范标准。

PC端/移动端的第三方应用程序要想在操作系统运行,就必须要遵循它的规范。比如IOS操作系统要求第三方应用程序要用苹果公司官方规定的语言来写,Objective-C或者Swift,Android操作系统需要用Android语言来写。

思维导图生成中,请稍候...

问题 1: 操作系统在计算机中扮演什么角色?
回答: 操作系统就像计算机的“总司令”,负责管理所有软件、硬件、文件系统、内存和网络等资源,并协调它们的运行。它是用户打开电脑或手机时运行的第一个应用程序,所有其他应用程序都需要通过操作系统来启动。

问题 2: 应用程序可以直接操控硬件吗?
回答: 不可以。操作系统将操作硬件的能力抽象成一套API接口(如硬件驱动程序),应用程序只能通过这些接口间接操控硬件。

问题 3: 市面上有哪些主流的操作系统?
回答: 主流操作系统包括PC端的Mac OS、Windows和Linux,以及手机端的iOS和Android。

问题 4: 为什么大多数服务器使用Linux操作系统?
回答: 因为Linux操作系统更安全可靠,且通常只有命令行界面,适合服务器的高效运行和管理。

问题 5: 不同操作系统的主要区别是什么?
回答: 主要区别在于用户操作界面和交互方式不同,以及对外提供的API接口不同。例如,Mac和Windows的界面和交互方式有显著差异,iOS和Android的开发语言和规范也不同。

问题 6: 什么是硬件驱动程序?
回答: 硬件驱动程序是操作系统提供的一套API接口,用于让应用程序能够间接操控硬件设备,例如打印机驱动程序用于连接和使用打印机。

问题 7: 为什么开发人员需要为不同操作系统编写不同的应用程序?
回答: 因为不同操作系统提供的API接口和开发规范不同。例如,iOS应用程序需要用Objective-C或Swift编写,而Android应用程序需要用Android语言编写。

问题 8: 操作系统如何决定是否运行一个应用程序?
回答: 当用户尝试运行一个应用程序时,操作系统会检测系统内存和CPU资源是否充足。如果资源充足,操作系统会允许应用程序运行。

问题 9: 什么是无界面的操作系统?
回答: 无界面的操作系统只有命令行,没有图形用户界面(UI)。例如,Linux操作系统通常以命令行形式运行,尤其是在服务器环境中。

问题 10: 操作系统如何管理文件系统?
回答: 操作系统负责文件的存储、检索和管理,确保文件能够被正确读取和写入,同时管理文件的权限和安全性。