RTLinux vs. Embedded Linux i Windows CE .NET - Kiedy warto zastosować?

Re: Embedded Linux czy Windows CE .NET?





Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?Micha=B3?= Byrecki <listy_at_nospam_bondi.pl>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Wed, 16 Apr 2003 00:49:08 +0200


On Tue, 15 Apr 2003 16:50:01 -0500
"Pszemol" <Pszemol_at_nospam_PolBox.com> wrote:

I ten RTlinux jest wci=B1=BF darmowy czy ju=BF p=B3atny?
Kto go tam wie... Ale jako=B6 ci=EA=BFko mi wymy=B6le=E6 zastosowanie dla m=
nie
jako dla systemu RT. Co m=F3g=B3by robi=E6? Zwyk=B3y Linux jako=B6 mi si=EA=
przy
wszystkim wyrabia. Jak bym chcia=B3 extra power obliczeniowy, to sobie
zmajstruj=EA w domu klastra. Ale na razie nie mam potrzeby, bo mam
wydajny system. Trudno, =BFeby handheld mia=B3 by=E6 na RT systemie, bo i=
po
co? Pecet (tfu!) i Linux te=BF si=EA dobrze sprawuje i da si=EA na tym
pracowa=E6 (por=F3wnuj=EA do handhelda z RT), chocia=BF ten duet nie jest R=
T.
A co do rozmiar=F3w jajka, to nie bez znaczenia jest kwestia przeno=B6no=B6=
ci.
Linux jest przeno=B6ny, i dlatego jest napisany w C. W asm s=B1 tylko
procedury =B3aduj=B1ce jajko, dekompresuj=B1ce i inne pierdo=B3y
platform-specific. A windowsy nie s=B1 przeno=B6ne (architektura i386).
Owszem, b=EAd=B1 zajmowa=E6 mniej. I co z tego? Mi, jak si=EA znudzo pecet,=
a
b=EAdzie mnie sta=E6 na MACa, to wypierdziel=EA t=B1 kup=EA z=B3omu, i b=EA=
d=EA m=F3g=B3
pracowa=E6 na starym systemie. A z windowsem to co mam zrobi=E6? G=F3wniano
skompilowane j=B1dro, chocia=BFby dlatego, =BFe nie jest zoptymalizowane pod
m=F3j sprz=EAt tylko jakie=B6 generic. A jak bym chcia=B3 w nim co=B6 pozmi=
enia=E6,
to mnie wsadz=B1 za reverse engineering :) I to na tyle...


--=20
Pozdrawia Was szcz=EA=B6liwy u=BFytkownik GNU/Linux
Micha=B3 Byrecki

/* Play me online? Well, you know that I'll beat you
If I ever meet you I'll control-alt-delete you */

========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Pszemol" <Pszemol_at_nospam_PolBox.com>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Tue, 15 Apr 2003 23:23:07 -0500


"Michał Byrecki" <listy_at_nospam_bondi.pl> wrote in message news:20030416004908.552860c9.listy_at_nospam_bondi.pl...
Kto go tam wie... Ale jakoś ciężko mi wymyśleć zastosowanie dla mnie
jako dla systemu RT. Co mógłby robić?

Pytasz się co może robić system real-time czy pytasz się
co mógłby robić Linux, bo nie rozumiem? To pierwsze pytanie
znajdziesz odpowiedziane w każdej dobrej książce na temat
systemów operacyjnych... Natomiast to drugie: no jeśli byłby
real-time to mógłby robić wszystko to, co każdy inny real-time :-)
Choćby sterować urządzeniami zewnętrznymi wymagającymi szybkiej
i przewidywalnej z duża dokładnością odpowiedzi systemu na zdarzenie.

Zwykły Linux jakoś mi się przy wszystkim wyrabia.

Po prostu nie potrzebujesz systemu realtime... to nie grzech :-)

Jak bym chciał extra power obliczeniowy, to sobie
zmajstruję w domu klastra. Ale na razie nie mam potrzeby, bo mam
wydajny system.

Tu nie chodzi o moc a raczej przewidywalność czasu odpowiedzi.
Dla przykładu - MS Windows 95 nie jest przewidywalny co do czasu
odpowiedzi, bo wystarczy myszką chwycić belkę tytułową okienka
i przytrzymać guzik myszki wciśnięty i już zablokowujemy kolejkę
komunikatów tego okienka - siedzi sobie ono w systemie i nie
robi nic z naszego kodu... dopóki user nie puści myszki...

A windowsy nie są przenośne (architektura i386).

W gruncie rzeczy wszystko jest przenośne - to tylko kwestia
ile czasu chcemy procesowi przenoszenia poświęcić :-)
W szczególności Windows CE jest dostępne pod cały szereg
procesorów, w tym x86 ale jest wiele, wiele innych...

Owszem, będą zajmować mniej. I co z tego?

No coraz mniejsze ma to znaczenie przy coraz mniejszych
cenach pamięci nieulotnej... W każdej duperelce teraz
masz już kilka megsów flasha więc to nie ma znaczenia...
No chyba, że robisz coś takiego małego jak mikrofalówka,
ale wtedy raczej rzadko potrzebny jest "system operacyjny" :-)

Mi, jak się znudzo pecet, a
będzie mnie stać na MACa, to wypierdzielę tą kupę złomu, i będę mógł
pracować na starym systemie. A z windowsem to co mam zrobić? Gówniano
skompilowane jądro, chociażby dlatego, że nie jest zoptymalizowane pod
mój sprzęt tylko jakieś generic. A jak bym chciał w nim coś pozmieniać,
to mnie wsadzą za reverse engineering :) I to na tyle...

Po prostu zabłądziłeś do tego wątku nie zauważając, że mowa
jest nie o pecetach tylko o malutkich urządzeniach z różniastymi
prockami, jak przystało na news:pl.misc.elektronika...


========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!jfo

Poprzedni Następny
Wiadomość
Spis treści
From: jfox_at_nospam_poczta.onet.pl (J.F.)
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Wed, 16 Apr 2003 08:39:22 +0000 (UTC)


On Tue, 15 Apr 2003 23:23:07 -0500, <Pszemol_at_nospam_PolBox.com> wrote:
Pytasz się co może robić system real-time czy pytasz się
co mógłby robić Linux, bo nie rozumiem? To pierwsze pytanie
znajdziesz odpowiedziane w każdej dobrej książce na temat
systemów operacyjnych... Natomiast to drugie: no jeśli byłby
real-time to mógłby robić wszystko to, co każdy inny real-time :-)

Definicja real-time w ksiazkach jest bardzo nieprecyzyjna.
A na tym twoim omac.org to jej w ogole znalezc nie moge.

Choćby sterować urządzeniami zewnętrznymi wymagającymi szybkiej
i przewidywalnej z duża dokładnością odpowiedzi systemu na zdarzenie.

I tu twoje "hard real-time" bywa zludne. Jaka bedzie odpowiedz
jak przerwania zaczna przychodzic naprawde czesto, albo
parami ?

J.



========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Pszemol" <Pszemol_at_nospam_PolBox.com>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Wed, 16 Apr 2003 08:45:42 -0500


"J.F." <jfox_at_nospam_poczta.onet.pl> wrote in message news:slrnb9q5hl.icp.jfox_at_nospam_home.pcmicm.pl...
Definicja real-time w ksiazkach jest bardzo nieprecyzyjna.
A na tym twoim omac.org to jej w ogole znalezc nie moge.

I tu twoje "hard real-time" bywa zludne. Jaka bedzie odpowiedz
jak przerwania zaczna przychodzic naprawde czesto, albo
parami ?

A to juz zalezy od implementacji konkretnego rozwiazania
na konkretnej maszynie - niektóre maszyny lub nieoptymalnie
napisane programy moga okazac sie niewystarczajaco sprawne
aby obsluzyc przerwanie zanim przyjdzie nastepne..
A co do przychodzacych parami - do tego masz 256 poziomów
priorytetów przerwan w Windows CE aby decydowac które
jest DLA CIEBIE wazniejsze.


========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_at_nospam_poczta.onet.pl>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Wed, 16 Apr 2003 22:14:32 +0200


On Wed, 16 Apr 2003 08:45:42 -0500, Pszemol wrote:
"J.F." <jfox_at_nospam_poczta.onet.pl> wrote in message news:slrnb9q5hl.icp.jfox_at_nospam_home.pcmicm.pl...
I tu twoje "hard real-time" bywa zludne. Jaka bedzie odpowiedz
jak przerwania zaczna przychodzic naprawde czesto, albo
parami ?
A to juz zalezy od implementacji konkretnego rozwiazania
na konkretnej maszynie - niektóre maszyny lub nieoptymalnie
napisane programy moga okazac sie niewystarczajaco sprawne
aby obsluzyc przerwanie zanim przyjdzie nastepne..

No i to samo masz z Linuxem - moze sie okazac wystarczajacy, mimo
ze nie jest "super hiper hard RT" :-) A jak sie nie okaze,
to trzeba szybszy procesor, albo troche optymalzacji :-)

A co do przychodzacych parami - do tego masz 256 poziomów
priorytetów przerwan w Windows CE aby decydowac które
jest DLA CIEBIE wazniejsze.

Hardware tylu nie obsluzy :-)
A poza tym przerywanie przerwan nie zawsze jest dopuszczalne.

J.



========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news2.icm.edu.pl!newsfeed.gazeta.pl!news.internetia.pl!skynet.be!skynet.be!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!news.xnet.com!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Pszemol" <Pszemol_at_nospam_PolBox.com>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Wed, 16 Apr 2003 15:27:21 -0500


"J.F." <jfox_at_nospam_poczta.onet.pl> wrote in message news:fo2r9v4lvtn6l9pus21ercsfngj5l5g5pl_at_nospam_4ax.com...
No i to samo masz z Linuxem - moze sie okazac wystarczajacy, mimo
ze nie jest "super hiper hard RT" :-) A jak sie nie okaze,
to trzeba szybszy procesor, albo troche optymalzacji :-)

I tu się mylisz, prawdopodobnie z powodu braku doświadczenia
w real-time... To, że jakiś system operacyjny nie jest realtime
nie znaczy, że wystarczy wziąć szybszy procesor i już się takim
stanie... Tu nie chodzi o najszybsze uzyskiwalne czasy odpowiedzi
ale taką strukturę systemu operacyjnego aby te czasy były po
pierwsze przewidywalne z dużą dokładnością a po drugie powtarzalne.
Jeśli nie możesz zagwarantować w linuxie, że w odpowiedzi na
jakieś przerwanie w ciągu 100us wystawisz L lub H na jakiejś
linii portu O/I to żebyś nie wiem jaki procesor szybki użył
może się to nie spełnić...

Hardware tylu nie obsluzy :-)

Spoko... Stosuje się chain interrupts w wersji 4.x Windows CE.

A poza tym przerywanie przerwan nie zawsze jest dopuszczalne.

Mam dla Ciebie propozycję - poczytaj sobie ciutkę o systemach
operacyjnych i znajdź gdzieś definicje różnic pomiędzy soft-
i hard- real time osem... Wtedy może wrócimy do zagadnienia :-)


========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_at_nospam_poczta.onet.pl>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Thu, 17 Apr 2003 22:14:01 +0200


On Wed, 16 Apr 2003 15:27:21 -0500, Pszemol wrote:
"J.F." <jfox_at_nospam_poczta.onet.pl> wrote in message news:fo2r9v4lvtn6l9pus21ercsfngj5l5g5pl_at_nospam_4ax.com...
I tu się mylisz, prawdopodobnie z powodu braku doświadczenia
w real-time... To, że jakiś system operacyjny nie jest realtime
nie znaczy, że wystarczy wziąć szybszy procesor i już się takim
stanie... Tu nie chodzi o najszybsze uzyskiwalne czasy odpowiedzi
ale taką strukturę systemu operacyjnego aby te czasy były po
pierwsze przewidywalne z dużą dokładnością a po drugie powtarzalne.
Jeśli nie możesz zagwarantować w linuxie, że w odpowiedzi na
jakieś przerwanie w ciągu 100us wystawisz L lub H na jakiejś
linii portu O/I to żebyś nie wiem jaki procesor szybki użył może się to nie spełnić...

Ale linux nie ma w jadrze petli z losowym opoznieniem i to na 64
bitowym liczniku. Nie gwarantuje 100us, ale w praktyce wychodzi
powiedzmy od 50us do 2ms. Wstaw szybszy procesor ... i bedzie
ponizej 1ms. Wstaw jeszcze szybszy - bedzie ponizej 500us :-)

A poza tym przerywanie przerwan nie zawsze jest dopuszczalne.

Mam dla Ciebie propozycję - poczytaj sobie ciutkę o systemach
operacyjnych i znajdź gdzieś definicje różnic pomiędzy soft-
i hard- real time osem... Wtedy może wrócimy do zagadnienia :-)

Tyle znalazlem. Za moich czasow nie bylo takich podzialow,
no ale tez za moich czasow MS nie wprowadzil jeszcze nowego znaczenia
na systemy wielozadaniowe :-)

MAm tylko glupie pytanie - jak zamierzasz rozwiazac np sterowanie
silnikami posuwow frezarki, jesli kontroler motorow jest jeden,
najpierw ustawia sie w nim ktory silnik bedziemy obslugiwac, potem
wpisujemy np napiecie do podania, ale wpisanie wlasciwych
wartosci wymaga troche obliczen procesorkiem, ktore trzeba co
przerwanie wykonywac..

J.


========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Pszemol" <Pszemol_at_nospam_PolBox.com>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Thu, 17 Apr 2003 20:55:36 -0500


"J.F." <jfox_at_nospam_poczta.onet.pl> wrote in message news:lmjr9vk838e5erp3sdo523t7k40ormacg6_at_nospam_4ax.com...
Ale linux nie ma w jadrze petli z losowym opoznieniem i to na 64
bitowym liczniku. Nie gwarantuje 100us, ale w praktyce wychodzi
powiedzmy od 50us do 2ms. Wstaw szybszy procesor ... i bedzie
ponizej 1ms. Wstaw jeszcze szybszy - bedzie ponizej 500us :-)

Nie podoba mi się to "od x...do y". Wolałbym 'niedłużej niż x".
I chciałbym też zobaczyć tą odpowiedź Linuxa na przerwanie
w ciągu 50us przy działającej całej reszcie systemu... :-)

MAm tylko glupie pytanie - jak zamierzasz rozwiazac np sterowanie
silnikami posuwow frezarki, jesli kontroler motorow jest jeden,
najpierw ustawia sie w nim ktory silnik bedziemy obslugiwac, potem
wpisujemy np napiecie do podania, ale wpisanie wlasciwych
wartosci wymaga troche obliczen procesorkiem, ktore trzeba co
przerwanie wykonywac..

Przykro mi, ale nie sterowałem nigdy silnikami krokowymi
ani tymbardziej nie zastanawiałem się nad konstrukcją
obrabiarki numerycznej więc ciężko mi tu odgadnąć wymagania
czasowe systemu... Ile czasu upływa od wpisania danych dla
silnika do kontrolera do wykonania calego ruchu? A ile czasu
potrzeba na obliczenie nowego wektora i przygotowanie nowej
paczki danych dla kontrolera? Zresztą... znów chcesz abym
za Ciebie problemy rozwiązywał i to pewnie za friko :-)


========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_at_nospam_poczta.onet.pl>
Subject: Re: Embedded Linux czy Windows CE .NET?
Date: Fri, 18 Apr 2003 22:20:26 +0200


On Thu, 17 Apr 2003 20:55:36 -0500, Pszemol wrote:
"J.F." <jfox_at_nospam_poczta.onet.pl> wrote in message news:lmjr9vk838e5erp3sdo523t7k40ormacg6_at_nospam_4ax.com...
MAm tylko glupie pytanie - jak zamierzasz rozwiazac np sterowanie
silnikami posuwow frezarki, jesli kontroler motorow jest jeden,
najpierw ustawia sie w nim ktory silnik bedziemy obslugiwac, potem
wpisujemy np napiecie do podania, ale wpisanie wlasciwych
wartosci wymaga troche obliczen procesorkiem, ktore trzeba co
przerwanie wykonywac..

Przykro mi, ale nie sterowałem nigdy silnikami krokowymi
ani tymbardziej nie zastanawiałem się nad konstrukcją
obrabiarki numerycznej więc ciężko mi tu odgadnąć wymagania
czasowe systemu... Ile czasu upływa od wpisania danych dla
silnika do kontrolera do wykonania calego ruchu? A ile czasu
potrzeba na obliczenie nowego wektora i przygotowanie nowej
paczki danych dla kontrolera?

Tu nie o to chodzi ile, ale ze trzeba. Przychodzi przerwanie
od jednego napedu - trzeba troche policzyc jak wysterowac
silniki, po czym wpisac dane do sterownika. A tu przychodzi
przerwanie od drugiej osi, zalozmy ze szybszej, wiec wyzszy priorytet
pozadany. Wpisu danych do sterownika absolutnie nie mozesz przerwac
drugim wpisem, niezbyt pozadane jest tez przerywanie obliczen, bo dane
do wpisania beda zbyt spoznione.
I co ci po tym ze system gwarantuje obsluge przerwania w
czasie 500us ?

J.


========
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news2.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!sn-xit-03!sn-xit-01!sn-post-02!sn-post-01!supernews.com!corp.supernews.com!not-for-mai