2代码执行的原理_CPU,内存,硬盘的关系

  一.硬件简介

  1. CPU

  CPU又称中央处理器,本质是超大规模的集成电路

  CPU负责 处理数据,计算数据,负责执行程序

  2.内存(也是来存取数据的,并不参与计算)

  临时 存储数据(断点后,数据消失)

  速度比硬盘快一千倍

  空间小

  内部是一个个芯片,不需要转动,直接存取数据

   3.硬盘

    永久 存储数据,断点后数据还在

  速度慢

  空间大

  内部是一个转盘,转动得越快,存取数据越快

  二.代码运行的全过程(原理)

    首先操作系统是自由的,它可以对硬盘,CPU,内存发号施令

    运行一段代码,操作系统先把代码和代码解释器从硬盘弄到内存中,CPU先用解释器把代码解释成机器码,解释型语言就解释一句,执行一句,编译型语言就把所有语句翻译成机器码,保存为机器码文件,然后把机器码文件存到内存里,然后CPU再启动内存中的机器码

    对于Python,操作系统把代码和代码解释器放到内存中,然后命令CPU开始翻译代码,翻译一句,CPU顺便执行一句

    对于JAVA,由于执行的文件本身就是机器码文件,.class文件,所以操作系统把机器码文件发送给CPU,CPU就会开始执行

原文地址:https://www.cnblogs.com/chrr/p/12362557.html

时间: 2024-11-10 18:02:05

2代码执行的原理_CPU,内存,硬盘的关系的相关文章

erlang虚拟机代码执行原理

erlang是开源的,很多人都研究过源代码.但是,从erlang代码到c代码,这是个不小的跨度,而且代码也比较复杂.所以这里,我利用一些时间,整理下erlang代码的执行过程,从erlang代码编译过程,到代码执行过程做讲解,然后重点讲下虚拟机执行代码的原理.将本篇文章,献给所有喜欢erlang的人. erlang代码编译过程 erlang对开发者是友好的,从erlang程序文件编译成能被erlang虚拟机识别的beam文件,在这个编译过程还对开发者暴露中间代码.借助这个中间代码,我们就可以逐步

CVE-2017-7269—IIS 6.0 WebDAV远程代码执行漏洞分析

漏洞描述: 3月27日,在Windows 2003 R2上使用IIS 6.0 爆出了0Day漏洞(CVE-2017-7269),漏洞利用PoC开始流传,但糟糕的是这产品已经停止更新了.网上流传的poc下载链接如下. github地址:https://github.com/edwardz246003/IIS_exploit 结合上面的POC,我们对漏洞的成因及利用过程进行了详细的分析.在分析过程中,对poc的exploit利用技巧感到惊叹,多次使用同一个漏洞函数触发,而同一个漏洞同一段漏洞利用代码

C++ 多态的实现原理与内存模型

多态在C++中是一个重要的概念,通过虚函数机制实现了在程序运行时根据调用对象来判断具体调用哪一个函数. 具体来说就是:父类类别的指针(或者引用)指向其子类的实例,然后通过父类的指针(或者引用)调用实际子类的成员函数.在每个包含有虚函数的类的对象的最前面(是指这个对象对象内存布局的最前面)都有一个称之为虚函数指针(vptr)的东西指向虚函数表(vtbl),这个虚函数表(这里仅讨论最简单的单一继承的情况,若果是多重继承,可能存在多个虚函数表)里面存放了这个类里面所有虚函数的指针,当我们要调用里面的函

JS代码预解析原理、函数相关、面向对象

JS重要知识点 这里列出了一些JS重要知识点(不全面,但自己感觉很重要).彻底理解并掌握这些知识点,对于每个想要深入学习JS的朋友应该都是必须的. 讲解还是以示例代码搭配注释的形式,这里做个小目录: JS代码预解析原理(包括三个段落): 函数相关(包括 函数传参,带参数函数的调用方式,闭包): 面向对象(包括 对象创建.原型链,数据类型的检测,继承). JS代码预解析原理 /****************** JS代码预解析原理 ******************//*JS代码预解析.变量作

Windows 性能监视器的基本指标(CPU,内存,硬盘参数)

转载:http://kms.lenovots.com/kb/article.php?id=7045 Windows 性能监视器的基本指标(CPU,内存,硬盘参数) 作为一个系统工程师来说,要看懂监控的数据至关重要,关系着优化和分析出现的问题,因此,今天给出Windows 性能监视器的一些基本指标(CPU,内存,硬盘参数),希望对大家将来优化和分析问题提供帮忙. Windows -Processor 指标名称 指标描述 指标范围 指标单位 CPU利用率(% Processor Time) % Pr

MySQL语法执行工作原理

目录 [TOC] 一.MySQL语法执行工作原理 客户端请求由Nginx等负载均衡服务器转交给Tomcat,Tomcat从MySQL中捞取数据,如果请求的数据在MySQL缓存中,那么MySQL会将缓存中捞取到的数据返回给客户端,如果缓存中没有请求的数据,那么MySQL会通过解析器解析SQL语法是否有问题(用户权限问题),在SQL语法没有问题的情况下,将SQL转交给优化器,看SQL是否通过索引等来进行查询,再通过存储引擎在磁盘中捞取数据. 详细流程如下,对于IE-->TOMCAT-->MySQL

第一章 Java代码执行流程

说明:本文主要参考自<分布式Java应用:基础与实践> 1.Java代码执行流程 第一步:*.java-->*.class(编译期) 第二步:从*.class文件将其中的内容加载到内存(类加载)(运行期) 第三步:执行代码(运行期) 2.代码编译 javac命令将源码文件编译为*.class文件. 后边将介绍: javac将*.java编译成*.class文件的过程 class文件的文件格式,以及其存储的内容 3.类加载 主要是指将*.class文件加载到JVM,并形成Class对象的机

VPS性能测试:CPU内存,硬盘IO读写,带宽速度,UnixBench和压力测试

现在便宜的VPS主机越来越多了,一些美国的VPS主机甚至给出1美元一月的VPS,堪比虚拟主机还要便宜,巨大的价格优势吸引不少人购买和使用,而近些年来国内的主机商也开始意识到便宜的VPS对草根站长的诱惑力,纷纷推出了低价VPS,其中突出的代表就是阿里云. 所谓“一分钱一分货”,把VPS当成虚拟主机来卖的如果不是做慈善事业就是超售严重,买回来的VPS到底值不值这个价钱,我们一般需要对VPS主机进行一番性能测试,涉及的项目主要有CPU内存,硬盘IO读写,带宽速度,UnixBench和压力测试等等. 本

ElasticSearch远程任意代码执行漏洞(CVE-2014-3120)分析

原理 这个漏洞实际上非常简单,ElasticSearch有脚本执行(scripting)的功能,可以很方便地对查询出来的数据再加工处理. ElasticSearch用的脚本引擎是MVEL,这个引擎没有做任何的防护,或者沙盒包装,所以直接可以执行任意代码. 而在ElasticSearch里,默认配置是打开动态脚本功能的,因此用户可以直接通过http请求,执行任意代码. 其实官方是清楚这个漏洞的,在文档里有说明: First, you should not run Elasticsearch as