# โจทย์หน่วยความจำบนกระดาษ

หน่วย 1 KiB = 1024 bytes ตัวเลขเป็นสมมติฐาน ไม่มีผลรันหรืออุปกรณ์

1. Flash, RAM, stack, heap ต่างกันอย่างไร? ทำไมไม่บวกความจุ RAM กับ stack/heap?
2. RAM จัดงบได้ 16 KiB จอง static 4, stack 3 และ buffers 2 KiB แยกกัน ไม่มี overhead อื่น จองรวมและเหลือกี่ bytes/KiB?
3. เปลี่ยนโจทย์ข้อ 2 ให้ buffers 2 KiB อยู่ใน static 4 KiB แล้ว ต้องเหลือเท่าไร? ถ้า task stack อยู่ใน heap ต้องตรวจอะไรก่อนรวม?
4. อีกโจทย์: heap ว่าง 4 + 3 KiB เป็นสองก้อนคั่นด้วยพื้นที่ใช้อยู่ ขอ 6 KiB ต่อเนื่อง โดย allocator ไม่ย้าย/เพิ่มพื้นที่และไม่นับ overhead/alignment ทำได้ไหม? ผลรวมบอกอะไรไม่ได้?
5. โปรแกรมคอมไพล์ผ่าน/static RAM น้อย แปลว่าไม่มี stack overflow/allocation failure ขณะรันหรือไม่? ต้องเก็บหลักฐานอะไร และหน่วย high-water mark ตรวจจากไหน?

เขียนวิธีคิดก่อนเปิด answers.md โจทย์ไม่เพิ่มคะแนนเดิม
