Linux 01/09/2026 8 phút

Đọc 100 MB từ /dev/random mất 138 ms và entropy_avail không giảm một bit — cái bẫy 'random sẽ chặn' đã chết từ nhân 5.6

'Đừng dùng /dev/random, nó sẽ chặn' là một trong những lời khuyên Linux được lặp nhiều nhất — và sai từ nhân 5.6. Tôi đo: /dev/random và /dev/urandom cho cùng 780 MB/s, entropy không tiêu hao, còn rand() nhanh gấp mười ở 16 byte nhưng CHẬM nhất ở 4 KB và không đoán nổi ai dùng nó cho bảo mật. Lập luận 'dùng RNG yếu cho nhanh' không còn cơ sở đo lường.

Linux 01/09/2026 8 phút

Cấu hình container dừng nhanh nhất — 113 ms — lại là cấu hình duy nhất mất dữ liệu: nó bỏ qua sạch bước dọn dẹp

Mọi container bị dừng thường xuyên hơn bị lỗi. Tôi đo sáu cách đóng gói cùng một ứng dụng: cái dừng trong 113 ms trông đẹp nhất trên bảng điều khiển nhưng là cái duy nhất không chạy dọn dẹp. Dừng nhanh không phải dừng êm — chỉ số đúng là mã thoát 0 cộng bằng chứng trong log, và hai lỗi đóng gói khác nhau cho cùng một triệu chứng.

Linux 01/09/2026 8 phút

4.997 zombie cạn sạch giới hạn PID của container trong 0,17 giây — chúng không tốn byte RAM nào, chỉ giữ đúng một thứ: số hiệu tiến trình

Zombie không phải lỗi của tiến trình con mà của cha không đọc mã thoát. Tôi đo: một vòng waitpid dọn sạch 200 con, còn fork không thu hồi thì cạn 5.000 PID trong 0,17 giây và mọi tiến trình trong container nhận EAGAIN — triệu chứng là 'không tạo được tiến trình' trong khi RAM và CPU vẫn bình thường, đúng chỗ người trực đi tìm sai hướng.

Linux 01/09/2026 9 phút

Một syscall rỗng đắt bằng 143 lời gọi hàm — và 19 nanô giây trong đó là tiền Docker âm thầm bắt bạn trả cho seccomp

Tôi đo trên Apple M4: gọi hàm thường 0,70 ns, còn getpid() — một syscall chẳng làm gì hữu ích — tốn 100,30 ns, chênh 143 lần, toàn bộ là chi phí đi sang nhân rồi về. Bóc tách 100 ns ấy: gần 19 ns là bộ lọc seccomp Docker gắn lên mọi container, và vDSO cho thấy tránh được cú vượt biên thì clock_gettime nhanh gấp 10,7 lần.

Linux 01/09/2026 9 phút

Container không lấy đi 3% CPU của tôi — nhưng chạy nhầm kiến trúc làm memset chậm đi 174 lần, và không có 'hệ số emulation' nào cả

Cùng một file C, cùng cờ -O2, chạy ở ba nơi trên một chiếc M4: chạy thẳng, container arm64, container x86_64. Cái vỏ container gần như miễn phí với CPU và bộ nhớ. Nhưng phiên dịch kiến trúc tính tiền từ 1,76 lần tới 174 lần trong CÙNG một chương trình — không tóm tắt được thành một con số.

Linux 01/09/2026 12 phút

fork() ở RSS 1 GB chậm gấp 20 lần khi RSS gần 0 — copy-on-write vẫn phải sao bảng trang, và Transparent Huge Page giấu 16 lần chi phí đó

fork() không copy dữ liệu nhờ copy-on-write, ai cũng biết — nhưng nó vẫn sao bảng trang, và chi phí đó tỉ lệ với RSS của cha. Tôi đo fork/vfork/posix_spawn khi cha giữ tới 1 GB: fork lên 3.850 µs còn vfork/posix_spawn phẳng lì, và tắt THP làm fork chậm thêm 9,3 lần. Vì sao THP che gần hết chi phí, đo bằng con số.