เจอรูปอธิบายเรื่อง Program vs Process vs Thread ใน Twitter
ซึ่งเข้าใจง่ายดี
โดยที่
- ในแต่ละ program ประกอบด้วยชุดคำสั่งต่าง ๆ และทำการจัดเก็บลงใน disk
- ในแต่ละ program นั้นสามารถมีมากกว่า 1 process ทำงานอยู่
- ในแต่ละ process นั้นจะถูก load ลงไปใน memory
- ในแต่ละ process จะมีหลาย ๆ thread ทำงานอยู่ ดังนั้นโดยปกติ ถ้า process ตาย thread ก็ตายตามไปด้วย
- ในแต่ละ thread สามารถติดต่อสื่อสารกันได้
- การ switch context ไปมาระหว่าง process จะเปลืองทรัพยากรมาก ๆ