语言实现
文章平均质量分 94
Dennis_Wang
这个作者很懒,什么都没留下…
展开
-
Java Virtual Machine
Java虚拟机一、什么是Java虚拟机Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。1.为什么要使用Java虚拟机Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而转载 2013-11-15 23:48:19 · 773 阅读 · 0 评论 -
C函数调用与堆栈的变化
这篇blog试图讲明当一个c函数被调用时,一个栈帧(stack frame)是如何被建立,又如何被消除的。这些细节跟操作系统平台及编译器的实现有关,下面的描述是针对运行在Intel奔腾芯片上Linux的gcc编译器而言。c语言的标准并没有描述实现的方式,所以,不同的编译器,处理器,操作系统都可能有自己的建立栈帧的方式。 一个典型的栈帧 ESP==>|转载 2014-01-12 23:19:50 · 728 阅读 · 0 评论 -
vmlinux_32.lds.S
本文简单的介绍了理解内核链接脚本需要的链接器知识和链接脚本语法,从vmlinux_32.lds.S文件分析了内核image的构成,并着重讲解了使用自定义section配合链接脚本动态创建表的方法。这里或许有一些你经常看到但不了解原理的东西,例如“内核导出符号表是如何创建的?”、“__initcall修饰的函数在什么时候被内核调用?”、“__initdata是否会被释放?”等。1. 什么是链转载 2014-01-26 17:28:30 · 1081 阅读 · 0 评论 -
单链表的逆置-C++实现
对于单链表的逆置有两种方法可以实现:(1)利用辅助指针 基本思想:在遍历结点过程中,设置辅助指针,用于记录先前遍历的结点。这样依次编译的过程中只需修改其后继结点的next域即可。 实现代码:[cpp] view plaincopyprint?typedef int DataType; /转载 2014-06-12 18:02:21 · 1157 阅读 · 0 评论