Level 413 bài
Memory Management
Hiểu bản đồ bộ nhớ tiến trình, dùng đúng malloc và free, nhận diện bốn loại lỗi bộ nhớ.
Chương 14. Bộ nhớ
Stack, heap, vùng tĩnh, malloc, calloc, realloc, free và các lỗi kinh điển.
- 14.1Ngăn xếpCách ngăn xếp cấp và thu hồi bộ nhớ, giới hạn kích thước, và ba cách làm tràn nó.18 phút
- 14.2Vùng cấp phát độngVì sao cần heap, nó khác ngăn xếp ở đâu, và bộ cấp phát làm việc thế nào.20 phút
- 14.3Bộ nhớ tĩnhVùng .data và .bss, biến static trong hàm, và thứ tự khởi tạo trước khi main chạy.16 phút
- 14.4Bộ nhớ toàn cụcBiến toàn cục nằm ở đâu, liên kết ngoài và nội bộ, và định nghĩa dự phòng.16 phút
- 14.5Bản đồ bộ nhớSáu vùng của một tiến trình, cách xem chúng thật, và đọc địa chỉ để đoán loại lỗi.20 phút
- 14.6mallocCấp phát vùng nhớ lúc chạy, cách viết đúng, và bốn lỗi kinh điển khi gọi nó.22 phút
- 14.7callocCấp phát và xóa về 0 trong một bước, kiểm tra tràn tự động, và khi nào nên dùng.15 phút
- 14.8reallocĐổi kích thước vùng đã cấp, cái bẫy mất con trỏ, và mẫu mảng tự lớn.22 phút
- 14.9freeTrả bộ nhớ về hệ thống, các quy tắc bắt buộc, và vì sao free không xóa dữ liệu.18 phút
- 14.10Rò rỉ bộ nhớBốn nguyên nhân rò rỉ, cách phát hiện bằng công cụ, và bốn mẫu phòng tránh.22 phút
- 14.11Con trỏ treoBa cách tạo ra con trỏ treo, vì sao nó khó phát hiện, và cách phòng.18 phút
- 14.12Giải phóng hai lầnVì sao gọi free hai lần phá cấu trúc bên trong bộ cấp phát, và cách phòng tuyệt đối.16 phút
- 14.13Dùng sau khi giải phóngLoại lỗi bộ nhớ nguy hiểm nhất, cơ chế khai thác, và bộ công cụ phát hiện.20 phút