操作系统及Python解释器工作原理讲解
操作系统介绍
操作系统位于计算机硬件与应用软件之间
是一个协调、管理、控制计算机硬件资源与软件资源的控制程序
操作系统功能:
控制硬件
把对硬件复杂的操作封装成优美简单的接口(文件),给用户或者应用程序去使用。
注意:一套完整的计算机系统包含
应用程序:qq、微信等
操作系统:windows、linux等
计算机硬件:昨天内容
强调:
我们以后开发的都是应用程序
应用程序无法直接操作硬件,但凡要操作硬件,都是调用操作系统的接口
编程语言分类:
机器语言:
直接用二进制编写程序
优点:程序执行效率高
缺点:开发效率低
汇编语言:
用英文标签去代替二进制指令,本质还是再直接操作硬件
优点:相对于机器语言的开发效率要高
缺点:执行相对于机器语言要低
高级语言:
高级语言就是直接用人能理解的语言跟风格来编写程序,程序员无需再去考虑复杂的硬件操作
问题是我们用高级语言编写的程序归根结底还是要给计算机去执行,这就涉及到一个翻译的过程,要把人用高级语言编写的程序翻译成计算机所能理解的二进制指令去执行,按照翻译方式的不同,可以分为2类,如下:
|
类型
|
例如
|
优点
|
缺点 |
|
编译型 |
C语言 |
执行效率比解释型高 |
开发效率不如解释型 |
|
解释型 |
Python |
开发效率高 |
执行效率比编译型慢 |
执行效率再快也要受限于网速,于是我们现阶段需要优先考虑就是开发效率
1、执行Python程序有2种方式:
1)交互式
优点:调试程序
缺点:无法永久保存代码
2)命令行的方式
python3 D:\p1.py
优点:可以永久保存代码
2、python解释器执行程序的三个阶段
|
Python解释器执行程序的三个阶段,例如执行(python3 D:\test.py) |
第一步:先启动python3解释器 |
|
第二步:Python3解释器就像一个文本编辑器一样将文件python3 D:\test.py从硬盘读入内存 |
|
|
Python3解释器解释执行文件代码 |
强调:只有第三阶段才识别python的语法
Pyhton多版本安装及使用
官网安装地址:https://www.python.org/downloads/windows/,可以看到python2.0和3.0的版本链接

操作系统及Python解释器工作原理讲解的更多相关文章
- 计算机三大硬件和操作系统以及python解释器
今日分享内容概要 计算机五大组成部分详解 计算机三大核心硬件 操作系统 编程与编程语言 编程语言的发展历史 编程语言的分类 python解释器 python解释器多版本共存 分享详细 计算机五大组成部 ...
- MapReduce工作原理讲解
第一部分:MapReduce工作原理 MapReduce 角色•Client :作业提交发起者.•JobTracker: 初始化作业,分配作业,与TaskTracker通信,协调整个作业.•TaskT ...
- [转载] MapReduce工作原理讲解
转载自http://www.aboutyun.com/thread-6723-1-1.html 有时候我们在用,但是却不知道为什么.就像苹果砸到我们头上,这或许已经是很自然的事情了,但是牛顿却发现了地 ...
- 【Todo】Python的工作原理
参考这篇: http://python.jobbole.com/86086/?from=timeline&isappinstalled=1&nsukey=MWQG%2B7OI4FvdQ ...
- OAuth 授权过程工作原理讲解
转自:http://www.imooc.com/article/10931 在一个单位中,可能是存在多个不同的应用,比如学校会有财务的系统会有学生工作的系统,还有图书馆的系统等等,如果每个系统都用独立 ...
- Android 异步通信:图文详解Handler机制工作原理
前言 在Android开发的多线程应用场景中,Handler机制十分常用 今天,我将图文详解 Handler机制 的工作原理,希望你们会喜欢 目录 1. 定义 一套 Android 消息传递机制 2. ...
- python程序执行原理
Python程序的执行原理 1. 过程概述 Python先把代码(.py文件)编译成字节码,交给字节码虚拟机,然后解释器一条一条执行字节码指令,从而完成程序的执行. 1.1python先把代码(.py ...
- python中的函数、生成器的工作原理
1.python中函数的工作原理 def foo(): bar() def bar(): pass python的解释器,也就是python.exe(c编写)会用PyEval_EvalFramEx(c ...
- 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL
周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...
随机推荐
- Spring 整合Mybatis Mapper动态代理方法
先看项目目录结构 很清爽了 最重要的Spring的核心配置文件,看一下 <?xml version="1.0" encoding="UTF-8"?> ...
- 用java数组模拟登录和注册功能
package com.linkage.login; import java.util.Scanner; public class user { // 存储用户名和密码 public static S ...
- IPC进程间通信---共享内存
共享内存 共享内存:共享内存就是分配一块能被其它进程访问的内存.每个共享内存段在内核中维护着一个内部结构shmid_ds, 该结构定义在头文件linux/shm.h中,其结构如下: struct sh ...
- DataSet和泛型之间相互转换
取数据的时候,存储过程返回了多个结果集,后台用DataSet去接收这几个结果集,然后接收之后,需要将结果集转换为不同的实体,于是下面的代码便出现了. /// <summary> /// 将 ...
- openstack之kvm常用操作
KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理. 1. 查看KVM虚拟机配置文件及运行状态 KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录 ...
- 【Spark】算子
1. mapWith mapWith(i => i*10)((a,b) => b+2) (拿到分区号)(a是每次取到的RDD中的元素,b接收i*10的结果) 2. flatMapWith ...
- python__基础 : 多继承中方法的调用顺序 __mro__方法
在多继承中,如果一个子类继承了两个平级的父类,而这两个父类有两个相同名字的方法,那么一般先继承谁,调用方法就调用先继承的那个父类的方法.如: class A: def test(self): prin ...
- 从python2.x到python3.x进阶突破
1.p2是重复代码,语言不同,不支持中文;p3则相反,其中代码不重复,语言用的相同的,并且是支持中文的. 2.p2中input中输入数字输出数字,输入字符串必须自己手动加引号才行;p3中input输出 ...
- Linux字符设备驱动--No.3
字符驱动(按键)初始化函数分析: int charDrvInit(void) { devNum = MKDEV(reg_major, reg_minor); printk(KERN_EMERG&quo ...
- python中将datetime对象转化为时间戳
从mongodb中读取出来的记录中,时间存储在datetime对象里,返回给客户端的却要求是时间戳格式,因此需要将对应的datetime时间转化为时间戳,从stackoverflow上找到同样的问题和 ...