Hiểu sâu về Tiến trình, Luồng và Coroutines trong Hệ điều hành

Từ bài toán sử dụng tài nguyên đến cơ chế đa nhiệm Khi nói đến quản lý tài nguyên hệ thống, cốt lõi nằm ở cách hệ điều hành tận dụng tối đa phần cứng như CPU, bộ nhớ, thiết bị nhập xuất. Trở lại thời kỳ máy tính lớn như IBM 7094, một phương pháp đơn giản được áp dụng: xử lý theo lô (batch processing). Người dùng ghi chương trình lên băng từ, má ...

Đăng vào ngày 14 tháng 6 lúc 06:12

Giới hạn số lượng thread tối đa của một process trong hệ điều hành Linux

Phân bổ không gian địa chỉ ảo Trong hệ điều hành Linux, không gian địa chỉ ảo được chia thành hai phần chính: Kernel Space (không gian nhân) và User Space (không gian người dùng). Tùy thuộc vào kiến trúc của CPU là 32-bit hay 64-bit mà kích thước của các vùng này sẽ khác nhau: Hệ thống 32-bit: Tổng không gian địa chỉ ảo là 4 GB. Thông thư ...

Đăng vào ngày 12 tháng 6 lúc 00:22

Phân Tích Mã Nguồn Bộ Khởi Động Hệ Điều Hành 64-bit

Giới thiệu Để hiểu rõ cơ chế hoạt động của bộ khởi động (boot sector), chúng ta cần nắm vững quy trình khởi động từ BIOS. Khi máy tính được bật nguồn, BIOS sẽ thực hiện kiểm tra phần cứng, sau đó đọc boot sector (512 byte) từ thiết bị khởi động và nạp nó vào địa chỉ bộ nhớ 0x7C00. Nhiệm vụ chính của đoạn mã này là tìm và tải kernel vào bộ nhớ, ...

Đăng vào ngày 1 tháng 6 lúc 13:44