4 เมษายน 2555

3 เมษายน 2555 (kernelคืออะไร)

หลังจากกลับมาจากสร้างห้องสมุดบ้านดินที่โรงเรียนวัดวังกระสวยก็เหนื่อยมากเลยหาอะไรอ่านในช่วง
ฝึกงานแล้วนำมาฝากวันนี้นั่นคือkernel ซึงหาเราจะควบคุมhardwareโดยใช้osเราก็จำเป็นต้องใช้มันในบทความนี้ผมจะให้รู้จักกับkernelของlinuxอย่างย่อแล้วกันนะครับ
สิ่งที่จำเป็นจะต้องรู้ก่อนคือOSคืออะไรและทำไมเราควบคุมhardwareในระบบOSโดยตรงไม่ได้
Operating System คือระบบที่ทำให้hardwareทำงานร่วมกับอย่างมีประสิทธิภาพและปลอดภัยโดยสาเหตุก็เพราะว่าเมื่อเราออกแบบhardwareซับซ้อนยิ่งขึ้นเราก็ยิ่งลำบากในการใช้hardwareนั้นจึงต้องการตัวช่วยบริหารนั้นคือOS โดยOSจะจัดการhardwareโดยแบ่งออกเป็นสองส่วนคือส่วนของuserซึ่งเราสามkรถทำอะไรก็ได้และส่วนของkernelเป็นส่วนhardwareซึ่งOSเป็นตัวจัดการโดยเราสามารถเรียกใช้งานได้โดยการเรียกใช้ฟังก์ชันในไลบรารีหรือSystem callคือการเรียกการทำงานภายในkernelจึงทำให้เราไม่สามารถควบคุมhardwareได้ดั่งที่ใจต้องการจึงทำให้เราต้องเขียนในส่วนkernelขึ้นมาเพื่อเรียกใช้ได้ดังใจที่เราต้องการโดยlinuxนี้จะมีจุดที่น่าสนใจคือkenelจะแบ่งออกเป็นส่วนย่อยๆได้แก่
Process management บริหารงานที่ทำอยู่ในเวลาหนึ่ง
Memory management บริหารหน่วยความจำ
Filesystems บริหารไฟล์จัดการรูปแบบไฟล์
Device control ควบคุมhardware
Networking ดูแลด้านการสื่อสาร
ส่วนที่เราเน้นหนักก็คือส่วนของDevice controlเพราะสามารถนำไปควบคุมhardwareได้โดยข้อดีนี้ทำให้เราไม่จำเป็นต้องสร้างkernelขึ้นมาทั้งหมดแค่เราเขียนแยกเป็นส่วนแล้วทำการลงไปในเครื่องก็ได้

รูปของการทำงานของคอมพิวเตอร์

ไม่มีความคิดเห็น:

แสดงความคิดเห็น