Pemproses melaksanakan program dalam Mod Pengguna atau Mod Kernel. Apabila anda menggunakan PC anda, pemproses kerap bertukar antara dua jenis mod ini, bergantung pada apa yang dilakukannya. Tetapi apakah Mod Pengguna dan Mod Kernel? Apakah perbezaan antara kedua-dua mod ini? Mengapakah CPU perlu bertukar antara mod ini.
Apakah Mod Pengguna dalam Windows?

Mod Pengguna dalam Windows
Apabila anda memulakan program pada Windows, program itu dilancarkan dalam Mod Pengguna. Setiap kali program dalam Mod Pengguna mahu dijalankan, Windows mencipta proses untuknya. Proses hanyalah program yang sedang dilaksanakan oleh pemproses atau program yang telah dijadualkan untuk dilaksanakan oleh Windows. Dan apabila Windows mencipta proses, ia juga mencipta ruang alamat maya untuk proses itu.
Ruang alamat maya ialah set alamat logik (bukan fizikal) yang Windows berikan kepada proses. Proses boleh menggunakan alamat ini untuk menyimpan data dalam memori fizikal.
Selain itu, ruang alamat maya diasingkan. Oleh itu, ruang alamat maya satu proses tidak mengganggu ruang alamat proses yang lain. Dan kerana program dalam Mod Pengguna mempunyai ruang alamat yang berasingan, jika satu program ranap, program itu akan ranap sahaja dan tidak menjejaskan program lain atau keseluruhan sistem pengendalian dengan kesannya.
Satu lagi cara untuk menerangkan aplikasi Mod Pengguna ialah menggunakan istilah "kurang keistimewaan". Windows mengehadkan aplikasi Mod Pengguna daripada mengakses terus sumber sistem kritikal, dengan itu menjadikan mereka kurang mendapat keistimewaan. Contohnya, jika aplikasi ingin mengakses perkakasan, ia mesti melalui kernel OS menggunakan panggilan sistem (gaya pengaturcaraan di mana program komputer meminta perkhidmatan daripada kernel sistem pengendalian). ia dilaksanakan).
Ringkasnya, program aplikasi seperti permainan video dijalankan dalam Mod Pengguna. Mereka mempunyai sedikit keistimewaan, jadi tidak mempunyai akses tanpa had kepada sumber sistem. Setiap aplikasi Mod Pengguna mempunyai ruang alamat sendiri. Aplikasi tidak boleh menukar ruang alamat aplikasi lain. Oleh itu, jika satu aplikasi ranap, ia tidak menjejaskan program lain yang dijalankan pada komputer.
Apakah Mod Kernel dalam Windows?
![Perbezaan antara Mod Kernel dan Mod Pengguna dalam Windows Perbezaan antara Mod Kernel dan Mod Pengguna dalam Windows]()
Mod Kernel dalam Windows
Sebelum membincangkan Mod Kernel, kita mesti terlebih dahulu mengetahui apa itu "kernel" dan cara ia berfungsi dengan Windows.
Kernel adalah otak sistem pengendalian. Ia adalah komponen perisian teras di mana semua komponen lain dalam sistem pengendalian bergantung. Kernel menguruskan perkakasan komputer, jadual berjalan pada komputer, dan mengendalikan interaksi antara perkakasan dan perisian aplikasi.
Ringkasnya, kernel adalah sekeping kod yang paling istimewa yang dijalankan pada sistem, kerana ia adalah kod yang berinteraksi secara langsung dengan perkakasan. Sebarang program lain yang ingin menggunakan sumber perkakasan mesti meminta akses melalui kernel.
Apabila program aplikasi berjalan dalam Mod Pengguna dan ingin mengakses perkakasan seperti kamera web, ia mesti meminta kernel menggunakan panggilan sistem. Untuk menyampaikan permintaan ini, CPU, pada masa pelaksanaan program, bertukar daripada Mod Pengguna kepada Mod Kernel.
Setelah pelaksanaan selesai, CPU beralih kembali ke Mod Pengguna dan mula melaksanakan proses yang dijadualkan seterusnya. Ini dipanggil "Penukaran Konteks" .
Apakah perbezaan antara Mod Pengguna dan Mod Kernel?
Perbezaan utama antara Mod Pengguna dan Mod Kernel ialah tahap keistimewaan yang disediakan oleh setiap mod. Dalam Mod Pengguna, aplikasi mempunyai lebih sedikit keistimewaan. Mereka tidak mempunyai akses langsung kepada sumber perkakasan dan tidak boleh menulis ke ruang alamat aplikasi lain.
Kod yang dijalankan dalam Mod Kernel mempunyai keistimewaan yang tinggi. Ia bukan sahaja mempunyai akses terus kepada perkakasan komputer, tetapi semua program yang dijalankan dalam Mod Kernel, termasuk sistem pengendalian, juga berkongsi ruang alamat. Jadi jika program dalam Mod Kernel ranap, ia boleh menyebabkan keseluruhan sistem pengendalian ranap. Untuk memastikan masalah sedemikian tidak berlaku, Windows hanya membenarkan beberapa proses dijalankan dalam Mod Kernel.
Windows menggunakan pendekatan berlapis untuk memisahkan program pengguna daripada sumber sistem
Windows menggunakan model berlapis untuk menentukan tahap keistimewaan proses. Aplikasi yang terletak di lapisan paling luar adalah aplikasi yang mempunyai keistimewaan penyewaan. Inti lapisan ini ialah kernel. Oleh itu, kernel mempunyai akses tanpa had kepada sumber sistem pengendalian.
Pendekatan berlapis juga melindungi fungsi sistem pengendalian kritikal. Apabila program di lapisan atas ranap secara rawak, ia tidak menjejaskan sistem pengendalian. Sebaliknya, apabila kernel ranap, keseluruhan sistem pengendalian terjejas.