話不多說邑跪,先上圖 Master-Worker模式 1桅打、Nginx 在啟動后,會有一個 master 進程和多個相互獨立的 worker 進程。2、接收來自外界的信號,向各wo...
![240](https://upload.jianshu.io/users/upload_avatars/8419913/f16cba6a-e458-4289-9aad-3d1d2b86dcad.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
話不多說邑跪,先上圖 Master-Worker模式 1桅打、Nginx 在啟動后,會有一個 master 進程和多個相互獨立的 worker 進程。2、接收來自外界的信號,向各wo...
最近在代碼中使用了Linux AIO接口,其需要通過O_DIRECT方式打開文件匠童,同時在IO時要求塊大小對齊。 對于塊大小對齊塑顺,找到了一個解釋:Why does O_DIRE...
SCSI分層 Linux內(nèi)核中SCSI代碼結(jié)構(gòu)分為三層汤求,它們和塊設(shè)備驅(qū)動的關(guān)系如下圖所示: iscsi initiator要實現(xiàn)SCSI底層,即負(fù)責(zé)將scsi命令封裝成網(wǎng)絡(luò)報...
virtio Virtio是IO虛擬化中的一個優(yōu)化方案严拒,屬于para-virtulization的一種實現(xiàn)扬绪,即Guest OS中需要運行virtio的驅(qū)動程序,通過virti...
在動態(tài)ftrace原理中已經(jīng)介紹了內(nèi)核通過gcc -pg -fentry為函數(shù)增加5 Byte的stub裤唠,系統(tǒng)啟動后這5 Byte被修改為NOP指令:66 66 66 66 ...
gcc的-pg選項 ftrace 支持動態(tài)trace挤牛,即可以跟蹤內(nèi)核和模塊中任意的全局函數(shù)。它利用了gcc的-pg編譯選項种蘸,在每個函數(shù)的開始增加一個stub墓赴,這樣在需要的時候...
KVM介紹 KVM (Kernel Virtual Machine) 是Linux Kernel的一個模塊。另外還有一個用戶空間的工具QEMU來控制KVM去創(chuàng)建航瞭、配置和管理V...
通過GDB和QEMU調(diào)試Linux內(nèi)核已經(jīng)有很多介紹了诫硕,但基本都是制作簡單的根文件系統(tǒng)。有時候需要調(diào)試的模塊或者場景需要用到發(fā)行版的Linux刊侯,因此本文介紹調(diào)試CentOS內(nèi)...