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

โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

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

โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

ทำความเข้าใจว่าระบบปฏิบัติการทำอะไร

คอมพิวเตอร์ประกอบด้วยฮาร์ดแวร์ ส่วนประกอบอิเล็กทรอนิกส์ และซอฟต์แวร์ รหัสคอมพิวเตอร์ที่ดำเนินการโดยฮาร์ดแวร์นั้น แต่สิ่งที่อาจไม่ชัดเจนคือการทำงานร่วมกันอย่างไร

    องค์ประกอบที่สำคัญที่สุดของคอมพิวเตอร์คือบิตหรือ "เลขฐานสอง" ทุกสิ่งที่คอมพิวเตอร์ทำจะถูกแสดงเป็นหนึ่งและศูนย์ ส่วนประกอบคอมพิวเตอร์ที่แตกต่างกันแสดงถึงบิตในรูปแบบต่างๆ ใน CPU ทรานซิสเตอร์ขนาดเล็กจะแทนค่าหนึ่งและศูนย์โดยการเปิดหรือปิด ทรานซิสเตอร์เหล่านี้ถูกจัดเรียงเป็นโครงสร้างเชิงตรรกะที่เรียกว่าลอจิกเกท

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

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

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

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

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

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

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

    เคอร์เนลเป็นแกนหลักของระบบปฏิบัติการตามชื่อของมัน เคอร์เนลคือซอฟต์แวร์ที่อยู่ใน RAM และควบคุมทุกอย่างที่คอมพิวเตอร์ทำ เมื่อบางสิ่งถูกเขียนลงในหน่วยความจำ เคอร์เนลจะเป็นตัวกำหนดการดำเนินการ

    เคอร์เนลรู้วิธีเชื่อมต่อกับฮาร์ดแวร์ เช่น GPU และการ์ดเครือข่าย แต่อาจไม่ทราบวิธีใช้งานอย่างเต็มศักยภาพ โดยอาศัยมาตรฐานทั่วไปในอุตสาหกรรมคอมพิวเตอร์

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

    ไดรเวอร์ฮาร์ดแวร์เข้ามาเล่นที่นี่ ไดรเวอร์จะบอกระบบปฏิบัติการของคุณถึงวิธีการทำงานกับส่วนประกอบเฉพาะ ซึ่งเป็นสาเหตุที่คุณต้องการไดรเวอร์ที่แตกต่างกันสำหรับ GPU Nvidia และ AMD เป็นต้น

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

    บทบาทของ Application Programming Interfaces (API)

    ในสมัยของ MS-DOS นักพัฒนาซอฟต์แวร์ต้องเขียนซอฟต์แวร์ของตนสำหรับฮาร์ดแวร์ของผู้ใช้โดยเฉพาะ ตัวอย่างที่โด่งดังที่สุดในระบบ MS-DOS คือไดรเวอร์การ์ดเสียง

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

    วิดีโอเกมจะต้องรองรับการ์ดยอดนิยม (Sound Blaster, Ad-lib, Gravis Ultrasound เป็นต้น) และหวังว่าผู้เล่นส่วนใหญ่จะได้รับการคุ้มครอง ทุกวันนี้ สิ่งต่างๆ ทำงานแตกต่างกันมาก ต้องขอบคุณ API

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

    Microsoft DirectX เป็นตัวอย่างที่ดี หากคุณต้องการคำอธิบายเชิงลึก โปรดดูที่ DirectX คืออะไรและเหตุใดจึงสำคัญ อย่างไรก็ตาม สิ่งที่สำคัญที่สุดที่ควรทราบคือ API นำเสนอวิธีมาตรฐานสำหรับนักพัฒนาซอฟต์แวร์ในการขอทรัพยากรฮาร์ดแวร์จากส่วนประกอบต่างๆ เช่น GPU นอกจากนี้ ผู้ผลิตฮาร์ดแวร์จะต้องตรวจสอบให้แน่ใจว่าผลิตภัณฑ์ของตนสอดคล้องกับ DirectX เพื่อให้แน่ใจว่าสามารถทำงานร่วมกับซอฟต์แวร์ที่เป็นไปตามข้อกำหนดเดียวกันได้อย่างสมบูรณ์

    API นำเสนอเลเยอร์การแปลระหว่างแอปพลิเคชันซอฟต์แวร์และเคอร์เนลระดับต่ำพร้อมไดรเวอร์ฮาร์ดแวร์ ใช่ สิ่งนี้มาพร้อมกับบทลงโทษด้านประสิทธิภาพเล็กน้อย อย่างไรก็ตาม ในคอมพิวเตอร์สมัยใหม่ สิ่งเหล่านี้มีเพียงเล็กน้อย และมาพร้อมกับข้อดีมากมาย ซึ่งในที่สุดเราก็มาถึงโหมดผู้ใช้และโหมดเคอร์เนล

    โหมดผู้ใช้กับโหมดเคอร์เนล

    ระบบปฏิบัติการสมัยใหม่เรียกใช้ "กระบวนการ" หลายแสนรายการพร้อมกัน โดยให้เวลา CPU แบบไดนามิกตามความจำเป็นตามลำดับความสำคัญและความต้องการด้านพลังงานในการคำนวณ

    เมื่อคุณเปิดแอปพลิเคชัน โปรแกรมจะสร้างกระบวนการ และ CPU สามารถดำเนินการได้ในโหมดผู้ใช้หรือโหมดเคอร์เนล

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

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

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

    เมื่อกระบวนการเริ่มต้นหรือถูกยกระดับเป็นโหมดเคอร์เนล กระบวนการจะสามารถเข้าถึงทรัพยากรระบบได้อย่างเต็มที่ แม้กระทั่งทรัพยากรที่สงวนไว้สำหรับระบบปฏิบัติการ ตามทฤษฎีแล้ว มันสามารถเขียนทับข้อมูลสำคัญที่ระบบปฏิบัติการจำเป็นต้องทำงานอย่างถูกต้องได้

    กับดักและข้อยกเว้น

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

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

    อันตรายของโหมดเคอร์เนล:หน้าจอสีน้ำเงินแห่งความตาย

    หากคุณเคยประสบกับหน้าจอสีน้ำเงินมรณะ (ใครยังไม่เคย) ที่บังคับให้คอมพิวเตอร์ของคุณปิดหรือรีสตาร์ท มีโอกาสดีที่กระบวนการในโหมดเคอร์เนลจะถูกตำหนิ

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

    โหมดผู้ใช้เทียบกับโหมดเคอร์เนลใน Windows คืออะไร

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

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

    หากคุณกำลังมีปัญหากับจอฟ้ามรณะ โปรดอ่านคู่มือการแก้ไขปัญหาจอฟ้ามรณะสำหรับ Windows 10!