Linux mempunyai 5 modul utama: 1. Modul penjadualan proses, yang digunakan terutamanya untuk mengurus dan mengawal pemproses yang digunakan oleh proses; 2. Modul komunikasi antara proses, yang digunakan terutamanya untuk mengawal penyegerakan antara proses yang berbeza dalam ruang pengguna , Perkongsian dan pertukaran data 3. Modul pengurusan memori, menggunakan mekanisme storan maya termaju untuk merealisasikan pengurusan storan berbilang proses 4. Modul sistem fail, dsb.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
Inti Linux mengandungi lima sub-modul utama: modul penjadualan proses, modul komunikasi antara proses, modul pengurusan memori, modul sistem fail dan modul antara muka rangkaian.
1. Modul penjadualan proses
Linux menggunakan proses sebagai unit asas peruntukan sumber sistem, dan Algoritma proses lanjutan dengan keutamaan dinamik digunakan untuk memastikan rasional setiap proses menggunakan pemproses. Modul penjadualan proses terutamanya mengurus dan mengawal pemproses yang digunakan oleh proses tersebut.
【Proses Penciptaan】:
Apabila pengaturcaraan dalam persekitaran Linux, fungsi fork()/vfork() biasanya digunakan (fork adalah untuk mencipta proses anak, dan menyalin data memori proses induk kepada proses anak; vfork mencipta proses anak, dan menggunakan ) bersama-sama dengan bahagian data memori proses induk untuk mencipta proses baharu, daripada sudah tentu, iaitu dalam fungsi ruang pengguna, ia akan memanggil panggilan sistem klon() dalam kernel, dan fungsi klon() akan terus memanggil do_fork() untuk menyelesaikan penciptaan proses.
fork()/vfork()/_clone--->clone()--->do_fork()--->copy_process()
【Proses Undo】:
Selepas proses ditamatkan, kernel perlu dimaklumkan supaya kernel boleh melepaskan sumber yang dimiliki oleh proses, termasuk memori dan fail terbuka dan sumber lain seperti semaphore. Cara umum untuk menamatkan proses adalah dengan memanggil exit() fungsi perpustakaan , yang mengeluarkan sumber yang diperuntukkan oleh pustaka fungsi C, melaksanakan setiap fungsi yang didaftarkan oleh pengaturcara dan menamatkan panggilan sistem yang menuntut semula proses daripada sistem.
【Penukaran Proses】:
Penukaran proses juga dipanggil penukaran tugas dan penukaran konteks . Ia adalah tingkah laku di mana, untuk mengawal pelaksanaan proses, kernel menggantung proses yang sedang berjalan pada CPU dan menyambung semula pelaksanaan beberapa proses yang digantung sebelum ini.
Pada dasarnya, setiap suis proses terdiri daripada dua bahagian:
[Penjadualan Proses]:
Dalam Linux moden, algoritma penjadualan boleh dipilih dalam masa tetap (bebas daripada bilangan runnable proses) Proses untuk dijalankan. Pertama sekali, kita mesti tahu bahawa proses boleh dibahagikan kepada proses masa nyata dan proses biasa . Setiap proses LInux sentiasa dijadualkan mengikut jenis penjadualan berikut: proses masa nyata pertama masuk dahulu, proses masa nyata putaran hirisan masa, proses perkongsian masa biasa . Algoritma penjadualan berbeza dengan ketara bergantung pada sama ada proses itu adalah proses biasa atau proses masa nyata.
2. Modul komunikasi antara proses
Komunikasi antara proses digunakan terutamanya untuk mengawal ruang pengguna antara penyegerakan proses yang berbeza, perkongsian data dan pertukaran. Memandangkan proses pengguna yang berbeza mempunyai ruang proses yang berbeza, komunikasi antara proses mesti dicapai dengan bantuan geganti kernel. Biasanya, proses digantung sementara menunggu operasi perkakasan selesai. Apabila operasi perkakasan selesai, proses disambung semula dan yang menyelaraskan proses ini ialah mekanisme komunikasi antara proses
Modul komunikasi antara proses memastikan Linux menyokong pelbagai mekanisme komunikasi antara proses, termasuk paip, paip bernama, dan baris gilir mesej , semaphore dan memori kongsi, dsb.
3. Modul pengurusan memori
Modul pengurusan memori Linux menggunakan mekanisme storan maya lanjutan . Laksanakan pengurusan storan untuk pelbagai proses. Ia menyediakan langkah perlindungan storan yang sangat boleh dipercayai dan memberikan kebenaran yang berbeza kepada proses Pengguna tidak boleh mengakses program dan data sistem secara langsung, memastikan keselamatan sistem. Pada masa yang sama, setiap proses pengguna diberikan ruang alamat maya bebas.
4. Modul sistem fail
Modul sistem fail Linux mengguna pakai sistem fail maya (VFS) lanjutan teknologi , melindungi perbezaan antara pelbagai sistem fail, menyediakan antara muka bersatu untuk memproses pelbagai sistem fail berbeza, dan menyokong lebih daripada 90 sistem fail fizikal yang berbeza. Pada masa yang sama, Linux menganggap pelbagai peranti perkakasan sebagai fail khas dan mengurus peranti dengan cara yang sama seperti fail, yang sangat mudah dan berkesan.
5. Modul antara muka rangkaian
Linux mempunyai fungsi rangkaian yang paling berkuasa. Modul antara muka rangkaian melaksanakan komunikasi rangkaian antara komputer melalui mekanisme Soket (Soket), dan menggunakan model lapisan rangkaian untuk menyediakan sokongan untuk berbilang protokol rangkaian dan peranti perkakasan rangkaian.
Antara muka rangkaian menyediakan sokongan untuk pelaksanaan pelbagai piawaian rangkaian dan pelbagai perkakasan rangkaian. Antara muka rangkaian biasanya dibahagikan kepada protokol rangkaian dan pemacu rangkaian. Bahagian protokol rangkaian bertanggungjawab untuk melaksanakan setiap protokol pengangkutan rangkaian yang mungkin. Pemacu peranti rangkaian bertanggungjawab terutamanya untuk berkomunikasi dengan peranti perkakasan Setiap peranti perkakasan rangkaian yang mungkin mempunyai pemacu peranti yang sepadan
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci Apakah modul yang terdapat dalam linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!