Day 02 操作系统和编程语言分类

Day 02 操作系统和编程语言分类

一、操作系统

什么是操作系统

操作系统就是帮助用户向硬件传达命令的工具

操作系统干了什么

  1. 接受外部的指令并转换为0和1发送给cpu
  2. 翻译用户的指令,把对文件的操作从复杂(控制高低电平)到 简单(用户指令或接口)

为什么要有操作系统

如果我们操控制计算机,必须要有操作系统,用户在使用应用程序的时候,都是通过调用操作系统的接口,来实现操作硬件。

计算机由什么组成

  1. 应用程序:代替用户完成任务,和操作系统和用户交互
  2. 操作系统:接收外部指令,控制硬件,从复杂(控制高低电平)到 简单(用户指令或接口),和应用程序、硬件以及用户交互
  3. 硬件:存储数据,输入/输出数据,操作数据,和操作系统交互

应用程序的启动和操作系统的启动

1. 应用程序的启动流程

  1. 双击应用程序
  2. 发送指令给操作系统
  3. 从操作系统将指令转换成0和1发送给CPU
  4. CPU吧指令发送给内存
  5. 内存从外存中调取应用程序的数据
  6. 应用程序加载到内存,启动该程序

2. 操作系统的启动流程

计算机分为两大类:硬件和软件,操作系统本质上还是软件,所以启动操作系统等于启动软件,如果启动软件就必须要经过操作系统,因此当我们需要启动操作系统的时候,我们需要一个临时的操作系统吧这个真正的操作系统启动。当启动操作系统的时候,ROM临时控制了CPU,并从CMOS中寻找操作系统的路径,然后启动操作系统,最后真正的操作系统+CPU将接管操作硬件的工作

二、编程语言分类

1. 机器语言

0和1就是机器语言
优点:执行代码效率非常快
缺点:开发效率低

2. 汇编语言

通过英文字符替代了0和1,但是还是直接和硬件交互
优点(相对机器语言):开发效率高
缺点(相对机器语言):执行效率低

3. 高级语言

  1. 解释型(同声传译)
    python,写一行翻译一行,翻译的内容不保存
    优点(相对于编译型):开发效率高(随时可修改代码)
    缺点(相对于编译型):执行效率低(Python底层通过C实现)
  2. 编译型(谷歌翻译)
    c、java,把写好的代码编译出一个结果后使用,可以保留下次使用
    优点(相对于解释型):执行效率高(直接编译成机器语言)
    缺点(相对于解释型):开发效率低(写完全部代码后才能检查bug)
posted @ 2019-05-17 16:13  萨萌萌  阅读(200)  评论(0)    收藏  举报