操作系统如何加载程序 1.用户编写完代码后,通过编译器将编译为数据段、代码段、堆栈段、bss段,由链接器链接为装入模块 2.用户通知操作系统要运行的程序 3.操作系统根据路径找到对应的程序,检测程序的头部,找到代码段和数据段的位置 4.文件系统根据这些段的位置找到对应的磁盘块 5.操作系统创建进程( ...
分类:
其他好文 时间:
2020-01-04 10:52:35
阅读次数:
102
一、什么是进程? 进程是程序的一次执行,是操作系统为正在运行的程序提供的抽象,即一个进程只是一个正在运行的程序。每个进程都有自己的地址空间、内存、数据栈,操作系统管理在其上运行的所有进程,并为这些进程公平的分配时间及系统资源。同时由于每个进程都有自己的内存空间和数据栈,所以只能使用进程间通信(IPC ...
分类:
编程语言 时间:
2020-01-03 21:26:42
阅读次数:
73
前言:该篇说明:请见 说明 —— 浏览器工作原理与实践 目录 在上篇文章中,我们讲到了,当一段代码被执行时,JavaScript 引擎先会对其进行编译,并创建执行上下文。但是并没有明确说明到底什么样的代码才算符合规范。 那么接下来我们就来明确下,哪些情况下代码才算是“一段”代码,才会在执行之前就进行 ...
分类:
编程语言 时间:
2020-01-03 21:14:58
阅读次数:
81
jstack命令的使用 文章来源:https://blog.csdn.net/wufaliang003/article/details/80414267 jstack是java虚拟机自带的一种堆栈跟踪工具。 jstack用于生成java虚拟机当前时刻的线程快照。线程快照是当前java虚拟机内每一条线 ...
分类:
Web程序 时间:
2020-01-01 09:35:39
阅读次数:
124
这些事儿我们都干过:比如趁妈妈不注意赶紧偷吃一块饼干;比如开车过急转弯不减速。那么,编程的时候我们也会有哪些“坏习惯”? 不良的编程习惯TOP1:粘贴复制 在学生时代,我们都知道抄袭是不对的。但在工作中,这方面的规则还很模糊。虽然有些代码块是不能盗用的——不要把专有代码拷贝到你的堆栈中,尤其是这些代 ...
分类:
其他好文 时间:
2019-12-30 19:46:22
阅读次数:
59
JAVA在程序运行时,在内存中划分5片空间进行数据的存储。分别是:1:寄存器。2:本地方法区。3:方法区。4:栈。5:堆。 基本,栈stack和堆heap这两个概念很重要,不了解清楚,后面就不用学了。 以下是这几天栈和堆的学习记录和心得。得些记录下来。以后有学到新的,会慢慢补充。 一、先说一下最基本 ...
分类:
编程语言 时间:
2019-12-30 19:43:14
阅读次数:
80
这里只介绍关于 arguments.callee.caller这个属性。 为了直接了解这个属性的特性,码来! 1 function getOneNumber(fun1,fun2){ 2 whatNum("1",fun1,fun2); 3 } 4 5 function getTwoNumber(fun ...
分类:
其他好文 时间:
2019-12-29 14:48:48
阅读次数:
67
1._und(未定义指令异常)介绍 我们之前分析过5种异常,那么如何进入未定义指令异常,当然是cpu读取指令发生异常,出现了指令解析异常。 我们先来看下当cpu解析到什么样的指令才会触发未定义指令异常呢? 从上面的arm指令格式中可知,只要指令码属于划线的格式,就属于未定义指令异常。 2.汇编向c函 ...
分类:
其他好文 时间:
2019-12-29 11:31:55
阅读次数:
101
Q1:用什么操作对象? A1:句柄,即Handle,再换个说法,引用,甚至指针。 Q2:对象保存在哪里? A2:一般对象存的地方无非在这几个区域中:寄存器,堆栈,栈,静态存储区,ROM,非RAM存储(比如字节流);在Java中,主要存储在堆和栈,具体可以分为方法逃逸(存在堆),线程逃逸(存在堆),和 ...
分类:
编程语言 时间:
2019-12-28 23:13:00
阅读次数:
165
简述 数据结构是组织存储数据,以便我们有效的访问、更改数据。堆栈、队列是计算机中定义最早的数据结构。堆栈是后进先出(一端固定另一端浮动),队列是先进先出的数据组织和存储形式。 代码 堆栈code lists = [] #定义空的堆栈,可以把它理解成一个地铁(这个地铁只有一侧门出入) lists.ap ...
分类:
其他好文 时间:
2019-12-28 19:21:54
阅读次数:
102