进程vs线程
进程和进程之间独立,线程是进程里的内容,内存在进程里(逻辑内存,32位操作系统,2^32=4G,每个进程都有4G的内存空间可以用,每个进程自己的内存是互相独立的),文件/网络句柄是进程共有的。
栈:从主线程入口,进行函数调用,每次调用会把函数的参数和方法压入栈中,包括函数的局部变量
PC:Program Counter, 下一条指令执行的地址。
TLS:Thread Local Storage,相当于线程独有的内存,存储线程的变量等
线程才是操作系统真正执行的内容,进程是容器
数据和程序存储在同一块内存
存储
寻址
-
寻址空间:每个进程有自己独立的寻址空间
32位操作系统-> 4G
64位操作系统->~10^19 Bytes
64位JVM -> 可使用更大内存,需重新编译