CPU执行计算任务时都需要遵从一定的规范,程序在被执行前都需要先翻译为CPU可以理解的语言。这种规范或语言就是指令集(ISA,Instruction Set Architecture)。 CPU 架构:CISC:Complex Instruction Set Computer,复杂指令集 X86 通 ...
分类:
其他好文 时间:
2020-03-31 01:29:17
阅读次数:
105
计算机操作系统的演变过程ENIARCcup:运算器、控制器、寄存器、缓存(一级缓存、二级缓存、三级缓存)存储器:内存RAM(RandomAccessMemory)Input:下达指令,提供数据等;output:输出数据加工的结果;程序:数据+指令组成;或者算法+数据结构组成。cup中存在指令集:1.普通指令;2.特权指令cell:8bits(8位二进制数)Bytes一个操作系统的具体结构由于一开始
分类:
系统相关 时间:
2020-03-30 21:43:48
阅读次数:
107
JVM 一、概念虚拟机:通过软件模拟的具有完整硬件功能的运行在一个完全隔离环境中的完整操作系统。JVM:软件虚拟Java字节码指令集。HoSpot是Java默认的虚拟机。二、Java内存区域与内存溢出异常Java虚拟机所管理的内存包括如下几个运行时数据区域:(1)线程私有区域(随线程的创建与销毁而创 ...
分类:
编程语言 时间:
2020-03-30 21:31:01
阅读次数:
95
虚拟机栈概述 虚拟机栈出现背景: 由于跨平台性的设计,Java的指令都是根据栈来设计的。不同CPU架构不同,所以不能设计为基于寄存器的 跨平台的优点:指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多指令。 栈是运行时的单位,而堆是存储的单位 栈解决程序的运行问题,即程序如何运行,或者 ...
分类:
其他好文 时间:
2020-03-25 23:48:01
阅读次数:
130
Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html 常用汇编指令集合 1. gdtr 1.gdtr 读取gdt表地址 其需要六个字节,但是前两个字节并没有用处。 汇编代码: CHAR Sgdtr[6] = { NULL ...
分类:
其他好文 时间:
2020-03-25 18:51:44
阅读次数:
132
一、CPU 1、指令集的分类:指令集分为复杂指令集和精简指令集。 2、x86-64的CPU: x86即CPU的型号,CPU一次能从存储设备里面取的指令数,比如现在常用的为64,即代表64个bits(高低电频)。 具有向下兼容性,即不超过CPU一次取指数的程序皆可运行(如64位的CPU可运行64位的程 ...
分类:
其他好文 时间:
2020-03-03 14:30:50
阅读次数:
62
计算机基础知识想详解 1、cpu详解 cpu的分类与指令集 x86-64(*****) cpu具有向下兼容性 64的cpu既能运行32位的程序也能运行64位的程序 内核态与用户态(*****) 代表cpu的两种工作状态 1、内核态:运行的程序是操作系统,可以操作计算机硬件 2、用户态:运行的程序是应 ...
分类:
其他好文 时间:
2020-03-03 10:27:48
阅读次数:
76
计算机基础知识详解 1.cpu详解 cpu的分类与指令集x86-64(*****) cpu具有向下兼容性 64的cpu既能运行32位的程序也能运行64位的程序 内核态与用户态(*****) 代表cpu的两种工作状态 1、内核态:运行的程序是操作系统,可以操作计算机硬件 2、用户态:运行的程序是应用程 ...
分类:
其他好文 时间:
2020-03-02 22:18:30
阅读次数:
132
上两篇文章我介绍了我最近设计的一套指令集及其对应的虚拟机架构,这篇文章就来介绍虚拟机的实现过程。 虚拟机其实很简单,需要做的只是用一种指令去模拟另一种指令的功能。 为了运行速度,当然希望用尽量低级的方法去模拟,所以应该用汇编编写,但为了效率,我先用的C语言写出整体逻辑,后期再考虑汇编。 虚拟机原理 ...
分类:
其他好文 时间:
2020-02-26 20:25:12
阅读次数:
70