第二章进程与线程一个进程就是一个正在执行程序的实例。停留在后台处理诸如电子邮件、Web页面、新闻、打印之类活动的进程,成为守护进程。每个进程中的内容:地址空间、全局变量、打开文件、子进程、即将发生的井盖、信号与信号处理程序、账号信息每个线程中的内容:程序计数器..
分类:
其他好文 时间:
2014-09-13 10:45:25
阅读次数:
225
原文传送门;* 文件名 : startup_stm32f10x_hd.s;* 库版本 : V3.5.0;* 说明: 此文件为STM32F10x高密度设备的MDK工具链的启动文件;* 该模块执行以下操作:;* -设置初始堆栈指针(SP);* -设置初始程序计数器(PC)为复位向量,并在执行main函数...
分类:
其他好文 时间:
2014-09-11 19:12:32
阅读次数:
275
先看一眼JVM虚拟机运行时的内存模型:
1.方法区 Perm(永久代、非堆)
2.虚拟机栈
3.本地方法栈 (Native方法)
4.堆
5.程序计数器
1 首先的问题是:jvm如何知道那些对象需要回收 ?
目前两种标识算法、三种回收算法、两种清除算法、三种收集器
引用计数法
每个对象上都有一个引用计数,对象每被引用一次,引...
分类:
其他好文 时间:
2014-09-07 21:13:05
阅读次数:
363
总结《现代操作系统》的一些概念知识。
1.进程上下文环境:
对进程执行活动全过程的静态描述
由进程的用户地址空间内容、硬件寄存器内容及与该进程相关的核心数据结构组成
用户级上下文:进程的用户地址空间(包括用户栈各层次),包括用户正文段、用户数据段和用户栈 寄存器级上下文:程序计数器、程序状态寄存器、栈指针、通用寄存器的值 系统级上下文: 静态部分(PCB和资源...
分类:
其他好文 时间:
2014-09-01 00:31:31
阅读次数:
305
1.JVM运行时数据区域的划分 a.程序计数器(Program Counter Register) 一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。每个线程拥有独立的一个计数器,如果当前执行的是Native方法,则计数...
分类:
编程语言 时间:
2014-08-21 22:58:45
阅读次数:
483
VM运行时数据区域:根据《Java虚拟机规范(第二版)》的规定,JVM包括下列几个运行时区域:我们思考几个问题:1.jVM是怎么运行的?2.JVM运行时内存是怎么分配的?3.我们写的java代码(类,对象,方法,常量,变量等等)最终存放在哪个区?VM运行时数据区域:1.程序计数器(program C...
分类:
编程语言 时间:
2014-08-19 18:58:16
阅读次数:
315
线程简介:线程是一个程序内部的顺序控制流。线程和进程的区别: 每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销。 线程可以看成是轻量级的进程,同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器,线程切换的开销小。 多进程: 在操作系统中...
分类:
编程语言 时间:
2014-08-18 21:45:33
阅读次数:
316
jvm运行时数据区的简单介绍
JVM所管理的内存分为以下几个运行时数据区:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区。
其中本文涉及到的主要有:java虚拟机站(简称java栈),java堆和方法区。
这里简单地普及一下这三种数据区的知识,java栈的读取速度是最快的(紧次与CPU的寄存器,跨平台性比寄存器好,android使用的是寄存器),但是里面...
分类:
其他好文 时间:
2014-08-18 13:09:22
阅读次数:
215
自己从网上搜资料拼接了一张JVM内存图:如下图所示:我们思考几个问题:1.jVM是怎么运行的?2.JVM运行时内存是怎么分配的?3.我们写的java代码(类,对象,方法,常量,变量等等)最终存放在哪个区?VM运行时数据区域:1.程序计数器(program Counter Register): 是.....
分类:
编程语言 时间:
2014-08-16 13:45:10
阅读次数:
265
jvm启动的时候会固定分配内存,将其分为程序计数器,堆内存,栈内存。程序计数器记录每个线程下一条指令的地址。堆内存存放类的实例变量和数组,空间是共享的栈内存存放局部变量,每个线程拥有私有的栈空间垃圾回收器(gc)主要负责堆内存的回收任务。栈内存中的内容存活的周期非常短。堆内存中可以分为,年轻代,老年...
分类:
其他好文 时间:
2014-08-15 17:23:19
阅读次数:
167