Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows

เคอร์เนลในระบบปฏิบัติการคืออะไร? เคอร์เนลมีกี่ประเภท?

ทุกระบบปฏิบัติการ ไม่ว่าจะเป็น Windows, Mac, Linux หรือ Android มีโปรแกรมหลักที่เรียกว่า เคอร์เนล ซึ่งทำหน้าที่เป็น 'เจ้านาย' ของทั้งระบบ มันคือหัวใจของ OS! Kernel เป็นเพียงโปรแกรมคอมพิวเตอร์ที่ควบคุมทุกสิ่งทุกอย่าง อะไรก็ตามที่เกิดขึ้นบนคอมพิวเตอร์จะต้องผ่านมันไป ในโพสต์นี้ เราจะพูดถึงเคอร์เนลในระบบปฏิบัติการคืออะไร และเคอร์เนลประเภทต่าง ๆ คืออะไร

เคอร์เนลใน OS คืออะไร

ตอนนี้เรารู้แล้วว่ามันเป็นโปรแกรมหลักในระบบปฏิบัติการ เราควรรู้ว่ามันเป็นโปรแกรมแรกที่โหลดหลังจาก bootloader ด้วย จากนั้นจะเป็นการพูดคุยระหว่างฮาร์ดแวร์กับซอฟต์แวร์หรือแอปพลิเคชัน ดังนั้น หากคุณเปิดโปรแกรม อินเทอร์เฟซผู้ใช้จะส่งคำขอไปยังเคอร์เนล จากนั้นเคอร์เนลจะส่งคำขอไปยัง CPU หน่วยความจำเพื่อกำหนดพลังการประมวลผล หน่วยความจำ และสิ่งอื่น ๆ เพื่อให้แอปพลิเคชันทำงานได้อย่างราบรื่นในส่วนหน้า

เคอร์เนลในระบบปฏิบัติการคืออะไร? เคอร์เนลมีกี่ประเภท?

คุณสามารถจินตนาการว่าเคอร์เนลเป็นนักแปลได้ มันแปลงคำขออินพุต/เอาต์พุตจากซอฟต์แวร์เป็นชุดคำสั่งสำหรับ CPU และ GPU พูดง่ายๆ คือ เป็นเลเยอร์ระหว่างซอฟต์แวร์และฮาร์ดแวร์ที่ทำให้ทุกอย่างเป็นไปได้ เคอร์เนลจัดการสิ่งต่อไปนี้:

  1. ซีพียู/GPU
  2. หน่วยความจำ
  3. อุปกรณ์อินพุต/เอาต์พุต หรือ IO
  4. การจัดการทรัพยากร
  5. การจัดการหน่วยความจำ
  6. การจัดการอุปกรณ์
  7. เรียกระบบ

กระบวนการของผู้ใช้สามารถเข้าถึงพื้นที่เคอร์เนลผ่านการใช้การเรียกของระบบเท่านั้น หากโปรแกรมพยายามเข้าถึงโดยตรง จะส่งผลให้เกิดข้อผิดพลาด

อ่าน :ความแตกต่างระหว่างโหมดเคอร์เนลและโหมดผู้ใช้

การรักษาความปลอดภัยและการป้องกันเคอร์เนล

เคอร์เนลยังปกป้องฮาร์ดแวร์อีกด้วย หากไม่มีการป้องกัน โปรแกรมใดๆ ก็สามารถทำงานบนคอมพิวเตอร์ได้ รวมถึงการหยุดทำงานของคอมพิวเตอร์ ทำให้ข้อมูลเสียหาย ฯลฯ

ในคอมพิวเตอร์สมัยใหม่ การรักษาความปลอดภัยถูกนำมาใช้ในระดับฮาร์ดแวร์ ตัวอย่างเช่น Windows จะไม่โหลดไดรเวอร์ที่ไม่ได้มาจากแหล่งที่เชื่อถือได้และได้รับการรับรองโดยใช้ลายเซ็น Secure Boot และ Trusted Boot คือตัวอย่างคลาสสิก

การบูตที่ปลอดภัย: เป็นมาตรฐานความปลอดภัยที่พัฒนาโดยสมาชิกของอุตสาหกรรมพีซี ช่วยปกป้องระบบของคุณจากโปรแกรมที่เป็นอันตรายโดยไม่อนุญาตให้แอปพลิเคชันที่ไม่ได้รับอนุญาตทำงานในระหว่างกระบวนการเริ่มต้นระบบ คุณสมบัตินี้ทำให้แน่ใจว่าพีซีของคุณบูทโดยใช้ซอฟต์แวร์ที่ผู้ผลิตพีซีเชื่อถือเท่านั้น ดังนั้น เมื่อใดก็ตามที่พีซีของคุณเริ่มทำงาน เฟิร์มแวร์จะตรวจสอบลายเซ็นของซอฟต์แวร์สำหรับบู๊ตแต่ละชิ้น รวมถึงไดรเวอร์เฟิร์มแวร์ (Option ROM) และระบบปฏิบัติการ หากตรวจสอบลายเซ็นแล้ว พีซีจะบู๊ตและเฟิร์มแวร์ให้การควบคุมระบบปฏิบัติการ

การบูตที่เชื่อถือได้:  ใช้ Virtual Trusted Platform Module (VTPM) เพื่อตรวจสอบลายเซ็นดิจิทัลของเคอร์เนล Windows 10 ก่อนโหลด ในทางกลับกัน มันจะยืนยันทุกองค์ประกอบอื่น ๆ ของกระบวนการเริ่มต้น Windows รวมถึงไดรเวอร์สำหรับบูต ไฟล์เริ่มต้น และ ELAM หากไฟล์มีการเปลี่ยนแปลงหรือเปลี่ยนแปลงในระดับใดก็ตาม bootloader จะตรวจพบไฟล์ดังกล่าวและปฏิเสธที่จะโหลดไฟล์โดยมองว่าเป็นส่วนประกอบที่เสียหาย กล่าวโดยสรุปก็คือ มันมอบความไว้วางใจให้กับองค์ประกอบทั้งหมดในระหว่างการบู๊ต

เคอร์เนลมีกี่ประเภท

เคอร์เนลยังสามารถพูดคุยกับฮาร์ดแวร์บนสายที่ปลอดภัย ดังนั้นบริษัทต่างๆ จึงสามารถพัฒนา Kernel ซึ่งสามารถพูดคุยกับฮาร์ดแวร์ของตนผ่านชุดปุ่มต่างๆ ได้ ยกตัวอย่างเครื่องซักผ้า ขึ้นอยู่กับลูกบิดที่คุณขยับและเวลาที่คุณตั้งไว้ – ระดับพื้นฐานของเคอร์เนลน่าจะเพียงพอแล้ว ที่กล่าวว่าเคอร์เนลเองนั้นซับซ้อนไปตามกาลเวลาซึ่งส่งผลให้เกิดประเภทของเคอร์เนล

  1. เคอร์เนลเสาหิน: ที่นี่ ทั้ง OS และ Kernel ทำงานในพื้นที่หน่วยความจำเดียวกันและเหมาะสมในกรณีที่ความปลอดภัยไม่ใช่ประเด็นสำคัญ ส่งผลให้เข้าถึงได้เร็วขึ้น แต่ถ้ามีข้อบกพร่องในไดรเวอร์อุปกรณ์ ทั้งระบบก็จะล่ม
  2. ไมโครเคอร์เนล: มันเป็นเวอร์ชันที่แยกย่อยของเคอร์เนลเสาหินซึ่งเคอร์เนลสามารถทำงานส่วนใหญ่ให้เสร็จ และไม่จำเป็นต้องมี GUI เพิ่มเติม ควรใช้ในกรณีที่ระบบรักษาความปลอดภัยและระบบขัดข้องไม่เกิดขึ้นหรือจะไม่เกิดขึ้น
  3. เคอร์เนลไฮบริด: เคอร์เนลนี้เป็นสิ่งที่เราเห็นมากที่สุด Windows, macOS ของ Apple เป็นส่วนผสมของเคอร์เนลเสาหินและไมโครเคอร์เนล โดยจะย้ายไดรเวอร์ออกแต่คงบริการของระบบไว้ภายในเคอร์เนล ซึ่งคล้ายกับการโหลดไดรเวอร์เมื่อ Windows เริ่มกระบวนการบูทเครื่อง
  4. นาโนเคอร์เนล: หากคุณต้องการมีเคอร์เนล แต่ฟังก์ชันส่วนใหญ่ได้รับการตั้งค่าภายนอก สิ่งนี้จะรวมอยู่ในรูปภาพ
  5. Exo Kernel: เคอร์เนลนี้เสนอการป้องกันกระบวนการและการจัดการทรัพยากรเท่านั้น อย่างไรก็ตาม ส่วนใหญ่จะใช้เมื่อคุณกำลังทดสอบโปรเจ็กต์ภายใน และคุณอัปเกรดเป็นประเภทเคอร์เนลที่ดีกว่า

Kernel มีอะไรมากกว่าที่เราพูดถึง เมื่อคุณเจาะลึกลงไป คำจำกัดความของเคอร์เนลจะกว้างและลึกซึ้งยิ่งขึ้น

เราหวังว่าโพสต์นี้จะเข้าใจง่ายและช่วยให้คุณเข้าใจถึงพื้นฐาน

อ่านต่อ :แผนที่เชิงโต้ตอบของเคอร์เนล Linux

เคอร์เนลในระบบปฏิบัติการคืออะไร? เคอร์เนลมีกี่ประเภท?