PSOS

PSOS

pSOS (Portable Software On Silicon)  este un sistem de operare în timp real (RTOS) creat în jurul anului 1982 de Alfred Chao și dezvoltat/vândut de Software Components Group (SCG). În anii 1980, a cucerit piața sistemelor încorporate bazate pe arhitectura familiei Motorola 68000 , așa cum a fost scrisă în assembler 68000 și a fost foarte optimizată pentru aceasta. A fost, de asemenea, modular, cu suport timpuriu pentru depanarea conștient de sistemul de operare, drivere de dispozitiv conectabile, stive TCP/IP, biblioteci de limbi și subsisteme de discuri. Mai târziu, au apărut depanarea la nivel de cod sursă, suportul pentru sisteme multiprocesor și extensii suplimentare de rețea.

Istorie

Prima lansare a avut loc în jurul anului 1982. În 1991, Integrated Systems Inc. (ISI) a continuat dezvoltarea pSOS – acum pSOS+ restilizat – pentru alte familii de microprocesoare, rescriind o mare parte a acestuia în C. De asemenea, sa acordat atenție sprijinirii unor medii de dezvoltare constant mai integrate, culminând cu PRISM+.

În iulie 1994, Integrated Systems a achiziționat sistemul de operare multitasking modular în timp real FlexOS de la Novell, care a influențat într-o oarecare măsură dezvoltarea acestui sistem de operare.

În 1995, Integrated Systems a oferit pachetul pSOSystem/NEST pentru Novell Embedded Systems Technology (NEST).

În februarie 2000, Integrated Systems Inc. a fost achiziționat de Wind River Systems , creatorul concurentului RTOS VxWorks . În ciuda rapoartelor inițiale că sprijinul pSOS va continua, dezvoltarea a fost oprită. Wind River a anunțat planuri pentru o versiune „convergentă” a VxWorks care va suporta apeluri de sistem pSOS și că nu se vor mai face lansări ale pSOS în sine.

NXP Semiconductors a achiziționat pSOS pentru TriMedia de la Wind River și a continuat să sprijine acest sistem de operare pentru nucleul TriMedia VLIW.

În martie 2000, compania rivală Express Logic a lansat kitul său de evaluare pentru utilizatorii pSOS+, conceput pentru a oferi o tranziție la ThreadX RTOS.

În august 2000, MapuSoft Technologies Inc. a lansat kitul de migrare pSOS OS Changer, care poate muta fără probleme software-ul pe mai multe sisteme de operare, cum ar fi Linux , VxWorks și multe altele. Include optimizări IDE și API , precum și un instrument de profilare pentru a măsura sincronizarea API pe plăcile țintă.

În august 2007, RoweBots, un fost partener al SCG și ISI, și-a deschis versiunea compatibilă pSOS+ sub numele Reliant.

Caracteristici

PSOS RTOS a fost dezvoltat de Integrated Systems Corporation. În prezent este deținută de WindRiver Corporation, care a cumpărat-o, aparent, pentru a nu interfera cu piața RTOS.

Numele pSOSsystem este atribuit sistemului de operare, numele pSOS+ este atribuit nucleului acestuia. pRISM+ este un mediu de dezvoltare integrat pentru construirea de aplicații.

pSOS+ este un mic nucleu de aplicație încorporat, care este un fel de arhitectură client-server. Cu toate acestea, nu are un protocol de comunicare bazat pe mesaje. O magistrală software este utilizată pentru interacțiunea modulelor. Este posibil să selectați și să încorporați module în sistem în timpul compilării. Aceste module includ sistemul de fișiere (pHILE+), depanatorul (pROBE+), protocoalele de rețea (pNA+), biblioteca de apeluri de proceduri la distanță (pRPC+) și biblioteca standard ANSI C (pREPC+).

Apelurile către diverse aplicații sunt efectuate prin întreruperi software.

pSOS+m este o versiune multiprocesor a nucleului pSOS+. Este nevoie ca un nod să fie maestru și restul să fie sclavi. Apelurile de sistem au fost adăugate acestui nucleu pentru a permite operațiuni peste granițele procesorului.

pSOS+ nu folosește conceptul de proces, ci operează pe sarcini, ceea ce corespunde conceptului de fire care rulează într-un singur proces. Toate obiectele de sistem sunt partajate între toate firele. Deoarece toate firele au același context, timpul de schimbare a firelor devine foarte scurt.

pSOSsystem are un model de memorie nesegmentată. Protecția memoriei poate fi asigurată prin biblioteca de gestionare a memoriei. Codul, datele și stivele pot fi protejate prin definirea mapărilor de protecție a memoriei pentru fiecare sarcină. În acest caz, responsabilitatea revine dezvoltatorului aplicației, iar aceasta nu este o sarcină ușoară. pSOSsystem oferă două abstracții pentru gestionarea memoriei - regiuni și partiții. Regiunile sunt bucăți de memorie de dimensiune nefixă, în timp ce partițiile sunt bucăți de dimensiune fixă. Gestionarea partiționării memoriei oferă o alocare rapidă a memoriei.

Managementul întreruperilor în pSOSsystem este destul de primitiv. În plus, nu există mutexuri și un mecanism de moștenire a priorității, care poate duce la inversarea priorității.

Domeniul de aplicare

Aplicarea unui RTOS este întotdeauna specifică. Dacă un sistem de operare cu scop general este de obicei perceput de utilizatori (nu de dezvoltatori) ca un set gata de aplicații, atunci un RTOS servește doar ca instrument pentru crearea unuia sau altul complex hardware și software în timp real. Prin urmare, cea mai largă clasă de utilizatori RTOS sunt dezvoltatorii unor astfel de complexe - oameni care proiectează sisteme de control și de colectare a datelor. Atunci când proiectează și dezvoltă un sistem specific în timp real, programatorul știe întotdeauna exact ce evenimente pot avea loc pe obiect, cunoaște momentul critic pentru procesarea fiecăruia dintre aceste evenimente.

Să numim un sistem în timp real (RTS) un complex hardware-software care reacționează într-un timp previzibil la un flux imprevizibil de evenimente externe.

Această definiție înseamnă următoarele.

În primul rând, sistemul trebuie să aibă timp să răspundă la un eveniment care a avut loc pe obiect în timpul critic pentru acest eveniment (respectarea termenului limită). Timpul critic pentru fiecare eveniment este determinat de obiect și de evenimentul în sine și, desigur, poate fi diferit, dar timpul de răspuns al sistemului trebuie prezis (calculat) atunci când sistemul este creat. Eșecul de a răspunde în timpul prevăzut este considerat o eroare pentru RTS.

În al doilea rând, sistemul trebuie să aibă timp să răspundă la evenimentele care apar simultan. Dacă două sau mai multe evenimente externe au loc în același timp, ea trebuie să aibă timp să reacționeze la fiecare dintre ele în intervalele de timp critice pentru aceste evenimente.

Există două tipuri de sisteme în timp real - sisteme hard în timp real și sisteme soft în timp real.

Sistemele hard în timp real nu permit nicio întârziere în răspunsul sistemului în nicio circumstanță:

Sistemele hard în timp real includ sisteme de control la bord, sisteme de protecție în caz de urgență și înregistratoare de evenimente de urgență.

Sistemele soft în timp real se caracterizează prin faptul că întârzierea de reacție nu este critică, deși poate duce la o creștere a costului rezultatelor și o scădere a performanței sistemului în ansamblu.

Rețeaua este un exemplu. Dacă sistemul nu are timp să proceseze următorul pachet primit, aceasta va duce la o întrerupere forțată pe partea de transmisie și, de exemplu, la retrimitere. Nu se pierd date, dar performanța rețelei este degradată.

Principala diferență dintre sistemele hard și soft în timp real poate fi formulată după cum urmează: dacă un sistem hard în timp real nu întârzie niciodată să răspundă la un eveniment, atunci un sistem soft în timp real nu ar trebui să întârzie să răspundă la un eveniment.

Să numim un sistem de operare în timp real un astfel de sistem care poate fi folosit pentru a construi sisteme dure în timp real.

Această definiție se referă la RTOS ca un obiect care conține instrumentele necesare, dar implică și faptul că aceste instrumente trebuie utilizate corect.

Surse

  1. ↑ Salt la: 1.0 1.1 Real Time Operating Systems // CIT [2001-2015]. Data modificării: 01/01/2006. URL: http://citforum.ru/operating_systems/rtos/19.shtml (data accesului: 01/12/2019).
  2. Salt sus ↑ Fragmente de timp real // computerworld [1992-2019]. Data modificării: 13/03/2000. URL: https://www.osp.ru/cw/2000/10/3681/ (data accesului: 01/12/2019).
  3. Salt în sus ↑ Express Logic oferă o nouă alegere pentru utilizatorii pSOS+® // expresslogic [2005]. Data modificării: 20/03/2000. URL: https://web.archive.org/web/20070928131427/http://www.rtos.com/news/detail/?prid=11 (accesat 01/12/2019).
  4. Salt sus ↑ Sisteme de operare în timp real // itWeek [2019]. Data modificării: 09/03/1999. URL: https://www.itweek.ru/industrial/article/detail.php?ID=50257 (accesat 01/31/2019).
  5. Biblioteca Nationala. N. E. Bauman https://ru.bmstu.wiki/PSOS_(Portable_Software_On_Silicon)