Wesley13 Wesley13
2年前
GCC编译器原理(一)
1.1交叉编译器制作默认安装的GCC编译系统所产生的代码适用于本机,即运行GCC的机器,但也可将GCC安装成能够生成其他的机器代码。安装一些必须的模块,就可产生多种目标机器代码,而且可通过命令行选择一种希望使用的代码。1.1.1目标机从网站http://gcc.gnu.org/install/sp
Wesley13 Wesley13
2年前
GCC编译器原理(一)05
1.3.18readelf:elf文件格式分析工具这个工具和objdump命令提供的功能类似,但是它显示的信息更为具体,并且它不依赖BFD库(BFD库是一个GNU项目,它的目标就是希望通过一种统一的接口来处理不同的目标文件);ELF文件类型ELF(ExecutableandLinkingFormat)是一种对象文
Wesley13 Wesley13
2年前
Java通过JNI的方式调用C
1、调用原理用java的javah命令将javanative方法编译成.h,在C程序中调用此.h文件,并实现.h文件里面声明的方法,编译生成.dll文件,最后java通过System.loadLibrary()加载.dll文件,调用具体的方法实现;2、具体操作步骤:1、编译JAVA类publicclassTes
可莉 可莉
2年前
10个前端8个用Vue的,怎么才能在面试中出彩?
现在但凡出去面试,面试官几乎必问Vue3.0。不仅会问一些核心特性,还会问原理层面的问题。比如:▶框架层面问题:Vue3.0新特性CompositionAPI与React.js中Hooks的异同点?▶源码、原理层面问题: Vue3.0编译做了哪些优化?Vue3.0是如何变得更快的?
Wesley13 Wesley13
2年前
20165305 苏振龙《信息安全系统设计基础》第一周学习总结
第一章:计算机系统漫游一、信息二进制(位串)上下文二、C语言代码转汇编代码命令:gccShello.iohello.s三、源程序翻译过程:源程序文本→预处理器(预处理)→编译器(编译)→汇编器(汇编)→链接器(链接)→可执行目标程序(二进制)四、了解编译系统工作原理的益处:1、优化程序性能2
Stella981 Stella981
2年前
DataQL 的表达式编译原理(逆波兰)
  憋了两周多这个算法算是憋出来了。大体思路是通过parser解析表达式,产生一颗AST树。然后将AST编译成指令序列。    举个例子:1212\212,根据先算乘除后算加减的规则表达式要被编译成:12,12,2,\,,12,。这个编译结果被执行的过程是如下这样:会入栈三个数:12,12,2
Stella981 Stella981
2年前
JVM中内存分配策略及堆和栈的比较
最近愈发对JVM底层的运行原理产生了兴趣,遂查阅相关资料以备忘。内存分配策略根据编译原理的观点,程序运行时的内存分配,有三种策略,分别为_静态的_、_堆式的_、_栈式的_。静态存储分配指的是在编译时就能确定每个数据目标在运行时的存储空间需求,因而在编译时就给它们分配了固定的内存空间。这种分配方式要求程序代码中不能有可变数据结构
Wesley13 Wesley13
2年前
C++服务编译耗时优化原理及实践
!(https://oscimg.oschina.net/oscnet/upa3f85176f538489aba8d8a0dbe6d8b8bcf4.JPEG)一、背景大型C工程项目,都会面临编译耗时较长的问题。不管是开发调试迭代、准入测试,亦或是持续集成阶段,编译行为无处不在,降低编译时间对提高研发效率来说具有非常重要意义。美
小万哥 小万哥
1年前
C++编译器和链接器的完全指南
C是一种强类型语言,它的编译和链接是程序开发过程中不可或缺的两个环节。编译器和链接器是两个非常重要的概念。本文将详细介绍C中的编译器和链接器以及它们的工作原理和使用方法。编译器编译器是将源代码转换为可执行文件的程序。在C中,常用的编译器有GCC
京东云开发者 京东云开发者
10个月前
Spring Loaded代码热更新实践和原理分析 | 京东云技术团队
本文将深入探讨如何利用SpringLoaded热更新技术提高开发效率,减少编译和重启时间。分析SpringLoaded的热更新原理,以及实际应用过程中所需的操作和注意事项。