Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah perbezaan antara linux dan vxworks

Apakah perbezaan antara linux dan vxworks

WBOY
WBOYasal
2022-07-11 16:45:039237semak imbas

Perbezaan antara linux dan vxworks: 1. Struktur kernel adalah berbeza vxworks adalah mikrokernel yang hanya menyediakan perkhidmatan asas, manakala linux adalah makrokernel Selain perkhidmatan asas, kernel juga termasuk sistem fail. protokol rangkaian, dsb.; 2. Mod berjalan adalah berbeza Aplikasi vxworks berada dalam "mod sebenar" dan tidak ada perbezaan antara mod pengguna dan mod kernel, manakala Linux menggunakan "mod terlindung dan rangkaian dijalankan dalam pengguna mod, dan benang kernel dijalankan dalam mod kernel.

Apakah perbezaan antara linux dan vxworks

Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.

Apakah perbezaan antara linux dan vxworks?

Sistem pengendalian yang saya gunakan untuk pembangunan terbenam ialah VxWorks Semasa saya di kolej, saya paling banyak menggunakan sistem pengendalian linux, tetapi untuk Apa adakah perbezaan antara kedua-dua sistem pengendalian ini? Saya tidak pernah benar-benar meringkaskannya dengan teliti Apabila ditanya oleh orang lain, tidak dapat dielakkan untuk merasa sedikit malu tidak akan mendalam, tetapi hari ini saya akan mengambil sedikit masa untuk meringkaskannya dengan teliti. Apakah perbezaan antara kedua-duanya?

 

          VxWorks       

             linux           

内核结构

微内核,内核只提供了基本

的服务,如:任务管理,内

存管理,中断处理等

宏内核,除了基本的服务,内

核还包括文件系统,网络协议

运行模式

应用程序运行在“实模式”

下,无用户模式和内核模式

之分

采用“保护 模式”,用 户进

程、线程运行在用户模式下,

内核线程运行于内核模式

内存访问和内存保护

内核采用实 存储管理方式,

所有任务运行于同一物理地

间,用户程序直接操作物理地

址,不能直接地提供内存护,

不能防错误蔓延

 

内核采用虚拟存储管理方式,用

户具有独立的地址空间,用户进

程只能访问本进程的虚拟空间提供

了内存保护,可以防止错误蔓延

执行单元

         任务

       进程、线程

请求内核服务方式

  函数调用,更快

    系统调用,更安全

实时性

        硬实时

           软实时

VxWorks linux
Struktur kernel Mikrokernel, kernel hanya menyediakan perkhidmatan asas, seperti: pengurusan tugas, dalaman Pengurusan memori, pengendalian gangguan, dsb. Inti makro, sebagai tambahan kepada perkhidmatan asas, kernel juga termasuk sistem fail, protokol rangkaian dsb.
Mod berjalan Aplikasi berjalan dalam "mod sebenar ", tiada perbezaan antara mod pengguna dan mod kernel menggunakan "mod dilindungi", dan pengguna memasuki Program dan benang dijalankan dalam mod pengguna, benang kernel dijalankan dalam mod kernel
Memori perlindungan akses dan ingatan Inti menggunakan kaedah pengurusan storan sebenar Semua tugas dijalankan di tempat fizikal yang sama, dan program pengguna secara langsung mengendalikan tempat fizikal alamat tidak dapat memberikan perlindungan memori secara langsung, tidak dapat menghalang penyebaran ralat <.>Inti menggunakan kaedah pengurusan storan maya , pengguna mempunyai ruang alamat bebas, dan proses pengguna hanya boleh mengakses ruang maya proses ini Ia menyediakan perlindungan memori untuk mengelakkan ralat daripada merebak
Unit pelaksanaan Tugas Proses, benang
Mod perkhidmatan kernel minta Panggilan fungsi, lebih pantas Panggilan sistem, lebih selamat
Masa Nyata strong> Masa nyata yang sukar Masa nyata yang lembut

VxWorks digunakan terutamanya dalam komunikasi data peringkat telekomunikasi dan produk lain, manakala Linux digunakan terutamanya dalam produk pengguna, kawalan industri, dll.

Mikrokernel, makrokernel

kernel Hubungan klien/pelayan terbentuk antara komponen yang menyediakan pelbagai perkhidmatan dan proses yang menggunakan perkhidmatan tersebut tidak semestinya perlu berada dalam kernel Ia juga boleh direka dan dilaksanakan sebagai "proses perkhidmatan". , di mana Satu-satunya bahagian yang mesti kekal dalam kernel ialah komunikasi antara proses Jika perkhidmatan ini dipindahkan dari kernel ke tahap proses, maka struktur kernel itu sendiri boleh dikurangkan dan dipermudahkan, dan setiap proses perkhidmatan juga boleh. direka bentuk dan dilaksanakan secara bebas dan penyahpepijatan.

Microkernel ialah mod kernel yang memindahkan perkhidmatan kepada proses Ia digunakan terutamanya dalam sistem masa nyata dan sistem terbenam, terutamanya kerana sistem ini biasanya tidak mempunyai cakera, dan keseluruhan sistem mesti diletakkan pada EPROM. selalunya dihadkan oleh ruang storan, dan perkhidmatan yang diperlukan agak mudah, seperti PSOS, VxWorks, dsb.

Inti makro ialah struktur kernel tradisional yang meletakkan pengurusan proses, pengurusan memori dan fungsi perkhidmatan lain ke dalam kernel Ia biasanya digunakan dalam kernel tujuan umum, seperti UNIX, linux, dll.

Perbandingan dan analisis bahagian pemacu peranti

Disebabkan pemisahan struktur sistem pengendalian Linux dan pemuat but Linux, pemacu peranti di antara mereka tidak boleh Universal, sudah tentu, kita boleh belajar daripada satu sama lain tentang beberapa kod berkaitan perkakasan untuk permulaan perkakasan cip. Pemacu peranti BOOTROM dan versi berjalan VxWorks adalah sama, kerana struktur versi berjalan dan BOOTROM adalah konsisten dan menggunakan kernel sistem pengendalian yang sama. Pemacu peranti sistem pengendalian Linux berjalan dalam ruang kernel, dan proses pengguna berjalan dalam ruang pengguna. Dalam sistem pengendalian Linux, kaedah pengurusan memori dan pemetaan ruang kernel dan ruang pengguna adalah berbeza. Aplikasi dan pemacu peranti akan melibatkan ruang memori yang berbeza semasa pertukaran data, yang akan menjejaskan kecekapan tertentu konfigurasi ruang memori dan kaedah lain untuk diselesaikan. Sistem pengendalian VxWorks tidak memisahkan ruang kernel dan ruang pengguna semuanya berjalan dalam ruang yang sama, dan memori antara satu sama lain boleh diakses dengan sangat mudah, tetapi kestabilan struktur ini tidak sebaik itu sistem operasi Linux menyediakan banyak sumber pemacu peranti dan templat. Walau bagaimanapun, disebabkan sifat sumber terbuka Linux, jenis dan bilangan pemacu peranti yang disediakannya jauh melebihi VxWorks.

Pembelajaran yang disyorkan: Tutorial video Linux

Atas ialah kandungan terperinci Apakah perbezaan antara linux dan vxworks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn