POSIX:Portable Operating System
API(Application Programming Interface)
ABI(Application Binary Interface)
JAVA
包含四个独立却又彼此相关的技术
- java程序设计语言
- java API
- java class文件格式
- JVM:java virtual machine
.java ——-> .class (bytecode)
JVM的实现方式
- 一次性解释器,解释字节码并执行
- 即时编译器(just-in-time conplier)
依赖于更多内存缓存解释后的结果 - 自适应编译器
缓存20%左右代码,提高80%左右的速度;
JVM: Hotspot JVM
JRE: java运行时环境
JDK:java 开发环境
JDK=Java+API+JVM,是用于实现java程序开发的最小环境
JRE=JVM+java SE API
JAVA应用领域的不同,JAVA可分为三类:
JAVA SE: Standard Edtion
JAVA EE: Enterprise Edition
JAVA ME:Mobile Edtion
applet:小应用程序是采用Java编程语言编写的程序,该程序可以包含在 HTML(标准通用标记语言的一个应用)页中,与在页中包含图像的方式大致相同。
由于其安全性问题,出现了CGI;
CGI:然后JSP;
JSP:Java Server Page
线程共享内存区
- 程序计数器
- java虚拟机栈
线程共享内存区
- 方法区
- 堆:java自动内存回收(Garbage Collector)
垃圾回收算法
- 标记-清除
- 复制
- 标记-整理
垃圾回收器
- Serial
- ParNew
- Parallel Scavenge
- Serial Old
- Parallel Old
CMS:Concurrent Mark Sweep
特点:并发收集、低停顿
缺点:无法回收浮动垃圾、由于基于标记-清除算法,所以会产生碎片;