程序执行原理(科普)
文章内容
- 计算机中的三大件
- 程序执行原理
- 程序作用
01.计算机中的三大件
计算机中包含有较多的硬件,但是一个程序要运行,有三个核心的硬件,分别是:
- CPU(干活的!!)
- *处理器,是一块超大规模的集成电路
- 负责处理数据╱计算
- 内存
- 临时存储数据(断电之后,数据会消失)
- 速度快
- 空间小(单位价格高)
- 硬盘
- 永久存储数据
- 速度慢
- 空间大(单位价格低)
02. 程序执行原理
-
程序运行之前,程序是保存在硬盘中的
-
当要运行一个程序时
-
操作系统会首先让CPU把程序复制到内存中
-
CPU执行内存中的程序代码
-
程序要执行,首先要被加载到内存
2.1 Python程序执行原理
- 操作系统会首先让CPU把Python解释器的程序复制到内存中
- Python解释器 根据语法规则,从上而下 让CPU 翻译 Python程序中的代码
-
CPU负责
执行翻译完成的代码
Python的解释器有多大?
- 执行以下终端命令可以查看Python解释器的大小
#1.确认解释器所在位置
$ which python
#2.查看 python文件大小(只是一个软链接)
$ls -lh /usr/bin/python
#3.查看具体文件大小
$ls -lh /usr/bin/python2.7
提示:建立软链接的目的,是为了方便使用者不用记住使用的解释器是哪一个具体版本
03. 程序作用
程序就是用来处理数据的!
- 新闻软件提供的新闻内容、评论.….是数据
- 电商软件提供的商品信息、配送信息.......是数据
- 运动类软件提供的运动数据.….....是数据
- 地图类软件提供的地图信息、定位信息、车辆信息.…....是数据
- 即时通讯软件提供的聊天信息、好友信息......是数据
- ......
3.1 QQ程序的启动过程
- QQ在运行之前,是保存在硬盘中的
- 运行之后,QQ程序就会被加载到内存中了
3.2 QQ程序的登录过程
- 读取用户输入的QQ号码
- 读取用户输入的QQ密码
- 将QQ号码和QQ密码发送给腾讯的服务器,等待服务器确认用户信息
Q1: 在QQ这个程序将QQ号码和QQ密码发送给服务器之前,是否需要先存储一下QQ号码和密码?
肯定需要!--否则QQ这个程序就不知道把什么内容发送给服务器了!
Q1: QQ这个程序把QQ号码和QQ密码保存在哪里?
保存在内存中,因为QQ程序自己就在内存中
Q1: QQ这个程序是怎么保存用户的QQ号码和QQ密码的?
- 在内存中为QQ号码和QQ密码各自分配一块空间
- 在QQ程序结束之前,这两块空间是由QQ程序负责管理的,其他任何程序都不允许使用
- 在QQ自己使用完成之前。这两块空间始终都只负责保存QQ号码和QQ密码
- 使用一个别名标记QQ号码和QQ密码在内存中的位置
在程序内部,为QQ号码和QQ密码在内存中分配的空间就叫做变量
程序就是用来处理数据的,而变量就是用来存储数据的