摘要:
前置概念 用户空间与内核空间 CPU 将指令分为特权指令和非特权指令,对于危险指令,只允许操作系统及其相关模块使用,普通应用程序只能使用那些不会造成灾难的指令。比如 Intel 的 CPU 将特权等级分为 4 个级别:Ring0~Ring3。 其实 Linux 系统只使用了 Ring0 和 Ring 阅读全文
摘要:
概述 Java NIO 全称 java non-blocking IO,是指 JDK 提供的新 API。从 JDK1.4 开始,Java 提供了一系列改进的输入/输出的新特性,被统称为 NIO(即 New IO),是同步非阻塞的。 NIO 三大核心部分:Channel(通道),Buffer(缓冲区) 阅读全文
摘要:
I/O 模型 BIO BIO 就是传统的java.io包,同步并阻塞,基于流模型实现,在读入输入流或者输出流时,在读写动作完成之前,线程会一直阻塞。 优点是代码比较简单、直观 缺点是效率和扩展性很低,容易成为应用性能瓶颈 NIO NIO 是Java 1.4引入的java.nio包,同步非阻塞,提供了 阅读全文