Pirmā lieta, kas mums ienāk prātā, izdzirdot vārdu operētājsistēma, ir programmatūra, kuru izmanto mūsu galddatoros un klēpjdatoros, piemēram, Microsoft Windows, Linux, Ubuntu utt., Un Android viedtālruņiem. Faktiski lielākajā daļā digitālo elektronisko ierīču darbojas sava veida operētājsistēma, kuras iekšpusē izstrādā mikrokontrolleru programma. Mikrokontrollera attīstība ir pavērusi ceļu daudzām iegultās sistēmas lietojumprogrammām, kurām vienā vai otrā veidā ir izšķiroša loma mūsu ikdienas dzīvē..
Viena no šādām sistēmām, par kurām pēdējā laikā esam dzirdējuši, ir reālā laika operētājsistēma jeb vienkārši saukta par “RTOS”. RTOS ir operētājsistēma, kas tiek izmantota reālā laika lietojumprogrammām, ar to saprotot lietojumprogrammas, kas apstrādā datus, kad tie nonāk noteiktā laika ierobežojumā. QNX un VxWorks ir divas dažādas reālā laika operētājsistēmas, kuras galvenokārt izmanto rūpniecības un akadēmiskajā vidē. Raksta mērķis ir objektīvi salīdzināt šos divus elementus.
QNX ir komerciāla reāllaika operētājsistēma, kas sākotnēji tika izstrādāta iegultām sistēmām, un to sākotnēji izstrādāja Quantum Software Systems 1980. gadu sākumā. Kanādas uzņēmums vēlāk tika pārdēvēts par QNX programmatūras sistēmām, un galu galā to iegādājās Research in Motion (RIM), lai izmantotu viņu BlackBerry 10 OS un tolaik populārā BlackBerry Playbook pamatu. Playbookā izmantotā OS versija bija QNX Neutrino, kas tika veidota uz patiesas mikrokodolu arhitektūras. QNX bija pirmā komerciāli veiksmīgā uz mikrokerneliem balstīta operētājsistēma. QNX pamatā ir Unix līdzīga operētājsistēma, kuras pamatā ir patiess mikrokodolu dizains un modulāra arhitektūra, kurā operētājsistēmas elementi darbojas kā uzdevumi, kas pazīstami kā Resursu pārvaldnieki, kas izstrādātājiem ļautu izslēgt visas funkcijas, kuras, viņuprāt, nav kas vairs nav nepieciešami konkrētajā sistēmā. Pats labākais QNX ir tas, ka tas ir balstīts uz ziņojumu balstītu starpprocesu komunikāciju.
VxWorks ir reālā laika operētājsistēma, kas īpaši izstrādāta izkliedētai skaitļošanai reāllaika lietojumprogrammām ar iegultām sistēmām. Tā ir patentēta reālā laika operētājsistēma, kuru izstrādājis Wind River Systems, Kalifornijā reģistrēts uzņēmums, kas specializējas iegultas programmatūras izstrādē viedām savienotām sistēmām. VxWorks ir nozarē vadošā RTOS, kas vairāk nekā trīs gadu desmitus būvē iegultas sistēmas un ierīces. Tas ir monolīts kodols ar plašiem starpprocesu sakariem un sinhronizācijas funkcijām. Katra VxWorks būve ir unikāla tās arhitektūras dēļ, kurā visa operētājsistēma darbojas kodola telpā, kas nozīmē, ka visi kodola pakalpojumi un lietotāja pakalpojumi pastāv tajā pašā adreses telpā, kas operētājsistēmas izpildi padara ātrāku. Tas nodrošina atkļūdošanas funkcijas, veiktspējas uzraudzību, atmiņas pārvaldību, CPU plānošanu un citas operētājsistēmas funkcijas, izmantojot sistēmas zvanus.
Abas ir ļoti unikālas reāllaika operētājsistēmas, kas īpaši paredzētas reāllaika lietojumprogrammām ar iegultām sistēmām, un katrai no tām ir slodzes no dažādiem komponentiem ar dažādām funkcijām. Abas sistēmas tiek plaši izmantotas lielā rūpniecības un akadēmiskajā vidē, un tās darbojas vairāk nekā gadu desmitiem. QNX ir komerciāla RTOS, ko astoņdesmito gadu sākumā izstrādāja Kanādā bāzētās Quantum Software Systems un kuru RIM iegādājās 2010. gadā. VxWorks ir patentēta programmatūra, ko izstrādājusi Kalifornijā balstīta Wind River Systems, nozares līderis, kas specializējas iegultas programmatūras izveidē. viediem savienotiem produktiem un sistēmām.
Abas operētājsistēmas izmanto reālā laika kodolu kritiski svarīgām lietojumprogrammām, kas apstrādā datus tādā nozīmē, ka sistēma ir pakļauta reālā laika ierobežojumam, kas garantē atbildi iepriekš noteiktā laika ierobežojumā, kas citādi pazīstams kā “termiņi”. Galvenā atšķirība slēpjas arhitektūrā - kamēr QNX balstās uz ziņojumu iet arhitektūru, VxWorks izmanto koplietojamo atmiņu arhitektūru. Ziņojuma nodošana ir būtiska kodola konstrukcijā, kas ļauj sistēmai nodot informāciju no viena uzdevuma uz otru vai vairākiem citiem sistēmā. Koplietojamo atmiņu arhitektūra attiecas uz sistēmu, kurai ir sava privāta adrešu telpa fiziski sadalītām atmiņām.
Viena no galvenajām atšķirībām starp abām reālā laika operētājsistēmām ir tā, ka QNX ir uz mikrokodiem balstīta OS, savukārt VxWorks ir monolīts kodols. Mikrokanāls ir kā maza operētājsistēma, kas piesaista sistēmas zvanus, lai pārvaldītu pamata pakalpojumus, piemēram, adrešu telpas pārvaldību, pavedienu pārvaldību un starpprocesuālos sakarus. Tas attiecas uz sistēmu, kurai OS ieviešanai ir nepieciešams ierobežots primitīvu kopums un minimāla programmatūras atkarība. No otras puses, monolīts kodols pārvalda visus pamatpakalpojumus un lietotāja noteiktos pakalpojumus, ieskaitot starpprocesu sakarus aizsargātā kodola telpā. Kā monolīts kodols, VxWorks ir autonoms.
Katram pavedienam vai procesam QNX ir sava prioritāte. Saskaņā ar QNX visi procesi notiek, balstoties uz prioritāriem principiem, kas nozīmē, ka process ar visaugstāko prioritāti vispirms iegūst piekļuvi centrālajam procesoram, un prioritātes svārstās no 0 līdz 31. Plānošana notiek reālā laikā, un katrs pavediens manto vecāka prioritāti. pēc noklusējuma. Ja diviem pavedieniem ir viena un tā pati prioritāte, QNX izmanto citas plānošanas metodes, piemēram, FIFO, Round-Robin un Sporādiskā plānošana. No otras puses, VxWorks izmanto tikai divu veidu plānošanas algoritmus: pirmsstatījuma prioritātes un Round-Robin plānošanu. Kopā tie nodrošina lielāku kontroles līmeni lietotājiem efektīvā laika plānošanā.
Abas ir uz kodola balstītas reālā laika operētājsistēmas, kas paredzētas reālā laika lietojumprogrammām, kurām nepieciešami uzdevumi jāapstrādā un jāpabeidz, jo tie nonāk iepriekš noteiktā laika ierobežojumā, ko citādi dēvē par termiņiem. Abi nodarbojas ar uzņēmējdarbību vairāk nekā 25 gadus un ir specializējušies iegultu produktu un sistēmu izstrādē, taču tieši šeit beidzas visas līdzības. QNX ir uz mikrokerneliem balstīta reālā laika operētājsistēma, kas pati par sevi ir diezgan aizraujoša, pateicoties tās ziņojumu caurlaidības arhitektūrai, kas ir ideāli piemērota uzticamu izkliedētu sistēmu izveidošanai. VxWorks ir monolīts kodols, kura pamatā ir kopīgas atmiņas arhitektūra, kas padara to par ideālu lielās rūpnieciskās vidēs, piemēram, automobiļu sistēmās, avionikā, plaša patēriņa elektronikā utt..