前序系列文章>>>09【涂鸦物联网足迹】涂鸦云平台标准指令集开放消息平台主要通过Pulsar主动推送各种事件数据给外部合作伙伴,以满足合作伙伴对消息实时性和消息持久化的要求。一、Pulsar?对于Pulsar的介绍,大家可以看一下这位大佬的简单介绍>>>pulsar-介绍。简单来说,Pulsar最初由雅虎开发,现在由Apache软件基金会管理,是一个支持多租户、
分类:
其他好文 时间:
2020-11-24 12:16:48
阅读次数:
8
毕昇JDK,重现了“活字印刷术”的传奇中央处理器,即CPU,包含很多种设计架构。其中最常见的架构有两种,一种是X86架构,一种是ARM架构。这两种架构有什么不同呢?主要是使用的指令集不一样。X86架构使用CISC指令集,即复杂指令集,最典型的代表就是英特尔处理器。ARM架构使用RISC指令集,即精简指令集,华为的鲲鹏就是基于ARM架构。OpenJDK,对于X86架构处理器有很好的支持,虽然也基本支
分类:
其他好文 时间:
2020-11-16 13:53:36
阅读次数:
8
vm的题目欠了好久了~~ 首先OD打开,跟进去,发现此处每次CALL的位置都会变化。这应该就是我们要找的。 跟进这个函数,大概分析下流程,能找到虚拟机的字节码。 同时,在IDA里对应。可以找到CALL调用的函数的地址。通过X交叉引用,就能找到虚拟机的指令集。 List里存有各个opcode对应的地址 ...
分类:
系统相关 时间:
2020-10-06 21:23:07
阅读次数:
57
虚拟机栈背景 由于跨平台性的设计,java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。 根据栈设计的优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。 内存中的堆与栈 栈是运行时的单位,而堆是存储的单位 1.栈解决程序的运行问题, ...
分类:
其他好文 时间:
2020-09-17 22:22:30
阅读次数:
26
由于跨平台性设计,Java的指令都是根据栈来设计的。不同CPU架构不同,所以不能基于寄存器的。栈的优点就是跨平台、指令集小,编译器容易实现;缺点是性能下降,实现同样的功能需要更多的指令。 Java虚拟机栈(Java Virtual Machine Stack)早期叫Java栈,每个线程创建时都会创建 ...
分类:
其他好文 时间:
2020-09-17 12:25:07
阅读次数:
29
指令集分类 基于寄存器的指令集 基于栈的指令集 Hotspot中的Local Variable Table = JVM中的寄存器 Runtime Data Area PC 程序计数器:由于存在线程切换,线程需要有自己的程序计数器来记住指令执行到的位置【线程私有】 存放指令位置 虚拟机的运行,类似于这 ...
分类:
其他好文 时间:
2020-09-15 20:52:34
阅读次数:
28
Linux中软件的安装和卸载命令 Linux软件的安装和卸载一直是困惑许多初学者的难题。由于Linux与Windows在系统目录结构,系统配置方式等诸多方面的重大差异,使这两者的软件安装卸载的方式也截然不同。在Windows中使用的是控制面板中的"添加/删除程序";与其相类似,在Linux下有一个功 ...
分类:
系统相关 时间:
2020-09-10 23:03:04
阅读次数:
48
Java编译器输入的指令流基本是一种基于栈的指令集架构,除此还有一种是基于寄存器的指令集架构。两者区别如下: 基于栈式架构的特点: (1)设计和实现简单,适用于资源受限的系统 (2)避开了寄存器分配难题:使用零地址指令方式分配。 (3)指令流中的指令大部分是零地址指令,其执行过程依赖于操作栈。指令集 ...
分类:
其他好文 时间:
2020-08-31 13:27:07
阅读次数:
67
Linux基础系列 https://www.cnblogs.com/xdyixia/category/1244088.html 1,linux内核的基础知识 1.1 linux内核版本 从内核源码顶层目录Makefile中可以看到: VERSION和PATCHLEVEL组成主版本号,比如2.4、2. ...
分类:
系统相关 时间:
2020-08-27 13:14:15
阅读次数:
58
64位x86-64处理器 针对所有使用x86-64指令集的64位处理器的基本架构细节。包括Intel64和AMD64处理器。 具有以下基本特点: 1.向后兼容x86指令集 2.地址长度为64位,虚拟地址空间为2的64字节 3.可以使用64位通用寄存器 4.比x86-32多了8个通用寄存器 5.物理地 ...
分类:
编程语言 时间:
2020-08-05 20:59:20
阅读次数:
160