最新 最热

使用PSI(Pressure Stall Information)监控服务器资源

我们通常会使用 load average 了解服务器的健康状况,检查服务器的负载是否正常。但 load average 有几个缺点:

2023-11-24
1

深入理解 Page Cache

长时间运行的Linux服务器,通常 free 的内存越来越少,让人觉得 Linux 特别能“吃”内存,甚至有人专门做了个网站 LinuxAteMyRam.com解释这个现象。实际上 Linux 内核会尽可能的对访问过的文件进行缓存,来弥补磁盘和内存之...

2023-11-24
1

理解Linux 终端、终端模拟器和伪终端

你可能听说过 TTY 和 PTY 这些缩写,也在 /dev 目录下看到过 /dev/tty[n] 设备,大概知道它们和 Linux 终端的概念有关。可是你清楚 TTY、PTY 具体指的是什么,它们有什么区别,以及它们和 shell 又是什么关系呢?为了理解这些,...

2023-11-24
1

进程ID及进程间的关系

进程相关的 ID 有多种,除了进程标识 PID 外,还包括:线程组标识 TGID,进程组标识 PGID,回话标识 SID。TGID/PGID/SID 分别是相关线程组长/进程组长/回话 leader 进程的 PID。...

2023-11-24
1

Linux 信号(Signal)

我们经常会使用 kill 命令杀掉运行中的进程,对多次杀不死的进程进一步用 kill -9 干掉它。你可能知道这是在用 kill 命令向进程发送信号,优雅或粗暴的让进程退出。我们能向进程发送很多类型的信号,其中一些常见的信号 SI...

2023-11-24
1

从Ftrace开始内核探索之旅

操作系统内核对应用开发工程师来说就像一个黑盒,似乎很难窥探到其内部的运行机制。其实Linux内核很早就内置了一个强大的tracing工具:Ftrace,它几乎可以跟踪内核的所有函数,不仅可以用于调试和分析,还可以用于观察学习Linu...

2023-11-24
1

使用火焰图进行Java性能分析

内核维护着各种统计信息,被称为Counters,用于对事件进行计数。例如,接收的网络数据包数量,发出的磁盘I/O请求,执行的系统调用次数。常见的这类工具有:...

2023-11-24
1

容器技术创新漫谈

Kubernetes在2017年赢得了容器编排之战,使得基于容器+Kubernetes来构建PaaS平台成为了云计算的主流方式。在人们把关注的目光都聚焦在Kubernetes上时,容器技术领域在2018年也发生了很多创新,包括amazon最近开源的轻量级...

2023-11-24
1

StripedFly:揭开恶意软件常年隐身的秘密

作为一个加密货币挖矿软件,StripedFly常年隐藏在一个支持Linux和Windows的复杂模块化框架后面。它配备了一个内置的TOR网络隧道,用于与命令控制(C2)服务器通信,同时通过可信服务(如GitLab、GitHub和Bitbucket)进行更新和交付...

2023-11-23
1

psutil - Python中用于进程和系统监控的跨平台库

psutil(进程和系统实用程序)是一个跨平台库,用于检索 Python 中运行的进程和系统利用率(CPU、内存、磁盘、网络、传感器)的信息。

2023-11-22
1