Uninitialized data segment là gì?

Phrase Programming
bss segment

Uninitialized data segment thường được gọi là bss segment, chứa biến toàn cục (global variable) và biến tĩnh (static variable) không được khởi tạo tường minh (explicitly). Trước khi bắt đầu chương trình, hệ thống khởi tạo tất cả bộ nhớ trong segment này thành 0.

Lý do chính để đặt các biến toàn cục và biến tĩnh được khởi tạo thành một segment riêng biệt với các biến chưa được khởi tạo là khi một chương trình được lưu trữ trên đĩa, không cần thiết phải cấp phát không gian (space) cho dữ liệu chưa được khởi tạo. Thay vào đó, file thực thi (executable file) chỉ cần ghi lại vị trí và kích thước cần thiết cho uninitialized data segment và không gian này được cấp loader của chương trình tại thời điểm run time.

Learning English Everyday