neprihlásený Piatok, 19. apríla 2024, dnes má meniny Jela
Oficiálne linuxové jadro sa stane real-time OS

Značky: Linux

DSL.sk, 6.10.2015


Organizácia The Linux Foundation v pondelok oznámila štart nového projektu Real-Time Linux Collaborative Project, v rámci ktorého bude zastrešovať iniciatívu pridať do oficiálneho linuxového jadra podporu Real-Time OS, RTOS, funkčnosti.

Bežné operačné systémy na súčasnom výkonnom hardvéri môžu dosahovať nízku priemernú odozvu, nedokážu ale garantovať dostatočne nízku odozvu v každej situácii. Takáto garancia je potrebná pri riadení rozličných kritických systémov.

Hard real-time operačný systém je systém garantujúci maximálnu dobu odovzdania kontroly kódu aplikácie po vzniku externej udalosti, napríklad príchodu signálu z externého senzora, príchodu dát po sieti a podobne. Aplikácia tak môže reagovať na vonkajšiu udalosť v garantovanom čase.

Najpopulárnejším RTOS je v súčasnosti zrejme proprietárny VxWorks vlastnený Intelom a nezaložený na Linuxe. Upravený RTOS Linux ponúka MontaVista a k dispozícii sú aj open source patche pre oficiálne jadro označené RT-Preempt a udržiavané Ingo Molnarom a Thomasom Gleixnerom.

Keďže ale podpora RTOS nie je priamo v oficiálnom jadre a vývojári pri bežnom vývoji jadra nedbajú na ovplyvňovanie RTOS funkčnosti, údržba týchto patchov je pomerne náročná. Cieľom novej iniciatívy je tak začleniť podporu pre RTOS funkčnosť priamo do oficiálneho jadra, podpora v prekompilovanom jadre samozrejme bude zrejme môcť byť vypnutá a pre bežné PC a servery nebude zapínaná.

The Linux Foundation bude iniciatívu zastrešovať podobne ako iné projekty a zamestná Thomasa Gleixnera, na vývoji sa budú ale podielať rozličné zapojené spoločnosti. Platinovým partnerom je Google, zlatými partnermi National Instruments, OSADL a Texas Instruments, striebornými Altera, ARM, Intel a IBM.

RTOS operačné systémy sa používajú v mnohých typoch zariadení realizujúcich kritické činnosti softvérovo, napríklad na riadenie výrobných zariadení v priemysle, riadenie robotov a strojov v medicíne, v počítačových systémoch automobilov, lietadiel a vesmírnych lodí, vo výkonných sieťových zariadeniach.


      Zdieľaj na Twitteri



Najnovšie články:

V najbližších dňoch bude spustený nový vysielač digitálneho rádia
Seriál Fallout podľa počítačovej hry bude mať pokračovanie
Budúci týždeň budú vydané dve dôležité linuxové distribúcie
Špehovacie satelity SpaceX už snímkujú Zem, s vyšším rozlíšením ako doterajšie
Linux si na PC drží podiel 4%
AI výkon tohtoročnej generácie Intel CPU bude vyšší ako 100 teraops/s
Apple bude mať nový seriál o alternatívnom sovietskom vesmírnom programe, predĺžila For All Mankind
Pôsobivého dvojnohého robota Atlas nahradí úplne nová elektrická verzia
O2 spustilo predaj na diaľku. Namiesto eID sa fotí tvár a občiansky, nedá sa objednať eSIM ani predplatenka
Klon populárnej databázy Redis od Linux Foundation k dispozícii v prvej verzii


Diskusia:
                               
 

Posielam external interrupt
Odpovedať Známka: 2.9 Hodnotiť:
 

Ďakujem, ale netreba. Viem si ho vytvoriť sám. A pri opakovanom externom sa vždy rozhodnem, či si ho opäť vôbec všimnem.
Odpovedať Známka: 2.7 Hodnotiť:
 

aj listy tiez pises sam sebe a potom sa rozhodujes ci na ne odpovies?
Odpovedať Známka: 8.2 Hodnotiť:
 

Veď píše, že ako kedy. Zrejme si niekedy predtým jednoducho rovno zatelefonuje. :-D
Odpovedať Známka: 8.2 Hodnotiť:
 

ze vo "vesmirnych lodiach", na konci clanku, no ja som sa skoro dostal :D :D :D
Odpovedať Známka: 3.3 Hodnotiť:
 

a dolovat z asteroidov a podobne nemozu lietat na linuxovych lodkach? mozu ;)
Odpovedať Hodnotiť:
 

no jasne, vsak Star Trek, ale ten tiez funguje na Windowse http://bit.ly/1PgYQum
Odpovedať Hodnotiť:
 

Ked som sa venoval AVRkam, v jednom example som si vsimol, ze vystupny port je napojeny na INT0 vstup. Inak povedane, procesor si sam vedel "hodit" prerusenie. Nechapem naco je toto dobre.
Odpovedať Známka: 7.8 Hodnotiť:
 

Je to veľmi užitočné keď potrebuješ spraviť softvérový interrupt, keďže AVR ho nemá.
Odpovedať Známka: 8.5 Hodnotiť:
 

ale vsak prerusenie je viazane na volanie definovanej funkcie. a ked naco posielat signal na pin, aby vyvolal prerusenie, ktore zavola tuto funciu, ked ju program moze volat priamo ? ani ja teda nechapem, naco je to dobre...
Odpovedať Známka: 6.7 Hodnotiť:
 

Obsluha prerusenia moze robit viac. Napriklad sa da jednoducho menit obsluha na jednom mieste a programy o sebe nemusia vobec vediet.
Pri volani funkcie je to ovela narocnejsie, kedze tam sa caka bud staticke linkovanie (nemozes menit funkciu) alebo dynamicke (potrebuje runtime linker). Ani pri dynamickom linkovani nejde uplne jednoducho menit funkciu za behu. Este je moznost volat funkciu cez pointer, ale ten by mal byt na zadanom mieste v pamati a na tom by sa aplikacie museli zhodnut. Naproti tomu taketo prerusenie sa robi ovela jednoduchsie.
Odpovedať Známka: 10.0 Hodnotiť:
 

mozem vykonanie funkcie podmienit globalnym priznakom (if(flag)return), tak isto ako podmienit vykonanie prerusenia "globalnym" registrom (neaky interrupt enable bit). Ak mam preruseniami podmienovat vykonanie funkcie, prichadzam zbytocne o piny mcu.

Hm, rozumiete? :)
Odpovedať Hodnotiť:
 

Ale prerusenie pride bez ohladu na to, ci to niekde testujes. V extreme by si tvoj flag musel testovat po kazdom riadku, co je neefektivne. Testovat flag sa teoreticky da na zaciatku funkcie, ale pamatat na to pri kazdom cykle, to uz je narocnejsie.
Odpovedať Známka: 10.0 Hodnotiť:
 

hovorime stale o avr ? programy ? robit multitasking na avr je dost hardcore. ked uz potrebujem menit obsluhu na zaklade niecoho, tak pouzijem jednoduchy switch(), a nebudem obsazovat zbytocne pin, ktorych je aj tak malo...
Odpovedať Známka: 10.0 Hodnotiť:
 

Co mas proti multitaskingu? Vsak riesenie preemptivneho multitaskingu pre avr s timerom napise ktorykolvek aspon trochu schopny programator za 2 tyzdne do 2k SLOC a moze to pouzivat znovu a znovu. A potom lahko spravi watchdog a hned sa s tym robi lepsie ;-).
Odpovedať Známka: 6.0 Hodnotiť:
 

Kvôli HW izolácii kernel scopu. RTOS tým na HW úrovni zabezpečuje, že kernel nespomalí ani nezhodí žiadna kombinácia paralelne spustených programov( sám sebe pánom). Opačný príklad sa dá jednoducho nasimulovať súčasným zasunutím viacerých USB kľúčov pod non-RTOS. Alebo odpojením disku nepripojeného cez hot-swap.
Odpovedať Známka: 10.0 Hodnotiť:
 

Vedia AVRka izolovat kernel od procesov? Pokial viem tak nemaju ani ring3 ani MMU...
Odpovedať Známka: 10.0 Hodnotiť:
 

nie. a nemaju,
Odpovedať Hodnotiť:
 

A výstupný port napojený na prioritný INT0 vstup je podľa vás čo? PCI?
Odpovedať Hodnotiť:
 

aky vystupny port ? port je port a kazdy pin sa da konfigurovat ako vstup alebo vystup, to ze ma neaky pin funkciu externeho prerusenia, neznamena ze musi byt toto prerusenie povolene a neznamena to ze ked je prerusenie povolene, tak ten pin musi byt nastaveny ako vystup. cize ak mam aplikaciu kde obsluhujem externe prerusenie, tak nastavim pin ako vstupny a povolim prerusenie. co tu stale splietate o neakom prepojeni vystupu pinu na vonkajsie prerusenie?
Odpovedať Hodnotiť:
 

ale ak sa niekto chce silou mocou skrabat nohou po uchu, a chce spustat funkciu obklukou, tak moze generovat pwm signal, ten prepojit na vstup analogoveho komparatora ktoreho vystup porovna s adc hodnotu prevodnika, vysledok posle na dalsi pin priletovany na int ktory spusti pozadovanu funkciu....
Odpovedať Hodnotiť:
 

...čím na zariadení, ktorého vlastný os/firmware nemá vstavanú podporu RING vzniká čo?:)
Odpovedať Hodnotiť:
 

Je možné odizolovať ostatné externé vstupy, keď má loopnutý vstup najvyššiu prioritu. Napríklad slúchadlá s aktívnym potláčaním šumu. Taká elektronická meditácia.
Odpovedať Hodnotiť:
 

pokial viem avrka nemaju cisto vystupny port. Port, resp. pin na porte sa konfiguruje prislusnym registrom. Ak chces vyuzivat na urcenom pine externe prerusenie tak ho prepnes do rezimu vstupu a urcis akym sposobom sa prerusenie vyvola (nabezna/dobezna hrana, logicka 1/0). Naco by som vyvolaval externe prerusenie samotnym procesorom?
Odpovedať Hodnotiť:
 

mozno sa tymto zacne/rozsisi pouzitie linuxových distribúcii napr pri ovladacích systemoch aut
Odpovedať Známka: 10.0 Hodnotiť:
 

Linux je velky moloch, preto myslim, ze skor nie. Ved aj po osekani ma skompilovany cez 600KB!
(Teraz si predstav auditovanie takeho kusu kodu)
Odpovedať Známka: -4.5 Hodnotiť:
 

To by si račej prehliadal zdrojáky MS-DOSu?
http://dopice.sk/eWJ
Odpovedať Známka: 3.3 Hodnotiť:
 

Nie, je tu VxWorks, RTEMS, FreeRTOS a dokonca mame aj L4 (s formalnou verifikaciou seL4).
Na taketo pouzitia je kopec lepsich rieseni ako pouzivat nezmensitelny moloch, ktory ma bezne cez 1MB a aj po vykuchani sietoveho stacku zostava viac ako pol MB. A naviac ma relativne vela bugov, co sa odvija od velkosti codebase a od chybajucej formalnej verifikacie.
Odpovedať Známka: 6.7 Hodnotiť:
 

tak, tak... este aj windows ce je na tom lepsie :D
Odpovedať Známka: 2.0 Hodnotiť:
 

a PLC v aute?:) postave
Odpovedať Hodnotiť:
 

zlata Amiga.
Odpovedať Hodnotiť:
 

Install Arch
Odpovedať Hodnotiť:
 

konecne rozbeham to pwm na tom atherose od D-Linku
Odpovedať Hodnotiť:
 

to by sa zislo aj na rpi
Odpovedať Hodnotiť:
 

A s čím sa to konzumuje? S kečupom alebo horčicou? :-D
Odpovedať Hodnotiť:
 

takže operačný systém na StarFleet lodiach bude, /je, /bol vyvynutý na linuxovom jadre, /základoch,
(s prvkami windowsovskích OS, a ich GUI..

:p 8) ;Dlol
Odpovedať Hodnotiť:
 

Aby bol OS v reále aj správne funkčný, nemôže to byť OS, a už vôbec nie s miliónmi riadkov kódu.
To sú totiž úplne protichodné veci!!!
Systém "real time" musí byť predovšetkým jednoduchý a spoľahlivý. A to žiaden OS nie je, a nikdy v dnešnej podobe nebude.
Tí čo neveria, vrátťe sa na dostatočne dlhý čas do programovania v ére PMI-80 z TESLA Piešťany.
Odpovedať Hodnotiť:

Pridať komentár