操作系统
未读
Linux的进程管理
1、Linux进程的相关概念 1.1、进程的类型 前台进程 前台进程就是具有终端可以和用户交互的进程 后台进程 与前台进程相对,没有占用终端的就是后台进程 后台程序基本上不和用户交互,优先级比前台进程
操作系统
未读
Linux的文件系统
1、文件系统概览 1.1、FAT FAT(File Allocation Table) FAT16、FAT32等,微软Dos/Windows使用的文件系统 使用一张表保存盘块的信息 1.2、NTFS NTFS(New Technology File System) WindowsNT环境的文件系统(
操作系统
未读
Linux的存储管理
1、Buddy内存管理算法(伙伴系统) Buddy算法似乎经典的内存管理算法 算法基于计算机处理二进制的优势具有极高的效率 算法主要是为了解决==内存外碎片==的问题 1.1、扩展 1.1.1、页内碎片 内部碎片是已经分配出去(能明确指出属于哪个进程)的内存空间大于请求所需的内存空间,不能被利用的内
操作系统
未读
Linux文件的基本操作
1、Linux目录 bin:存放可执行的二进制文件,常用的命令都在这里 etc: 这个目录用来存放所有的系统管理所需要的配置文件和子目录 home: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的 user: 用户目录,存放用户级的文件 local —
操作系统
未读
CPU的负载率和利用率
CPU利用率: 显示的是程序在运行期间实时占用的CPU百分比; CPU负载: 显示的是一段时间内正在使用和等待使用CPU的平均任务数。CPU利用率高,并不意味着负载就一定大。举例来说:如果我有一个程序它需要一直使用CPU的运算功能,那么此时CPU的使用率可能达到100%,但是CPU的工作负载则是趋近
Netty
未读
Netty02-入门
1. 概述 1.1 Netty 是什么? Netty is an asynchronous event-driven network application framework
for rapid development of maintainable high performance protoc
Netty
未读
Netty01-nio
一. NIO 基础 non-blocking io 非阻塞 IO 1. 三大组件 1.1 Channel & Buffer channel 有一点类似于 stream,它就是读写数据的双向通道,可以从 channel 将数据读入 buffer,也可以将 buffer 的数据写入 channel,而之
Netty
未读
Netty03-进阶
1. 粘包与半包 1.1 粘包现象 服务端代码 public class HelloWorldServer {
static final Logger log = LoggerFactory.getLogger(HelloWorldServer.class);
void start(
Netty
未读
Netty04-优化与源码
四. 优化与源码 1. 优化 1.1 扩展序列化算法 序列化,反序列化主要用在消息正文的转换上 序列化时,需要将 Java 对象变为要传输的数据(可以是 byte[],或 json 等,最终都需要变成 byte[]) 反序列化时,需要将传入的正文数据还原成 Java 对象,便于处理 目前的代码仅支持
Java工具类
未读
BigDecimal工具类
import java.math.BigDecimal;
import java.math.RoundingMode;
/**
* 简化BigDecimal计算的小工具类
*/
public class BigDecimalUtil {
/**
* 默认除法运算精度
JVM
未读
IO流关闭到底关闭了什么
“无论从网络 Socket 还是从本地文件系统读取二进制数据,程序都是以流的形式操作这些二进制数据。Java 提供了两个超类 InputStream、OutputStream 提供了操作支持。我们在编码时用的最多的是这两个超类的派生类,如 FileInputStream、DataInputStrea