[#1] Budowa(struktura)systemu AmigaOS
Witam wszystkich . Jestem nowy na forum, i bardzo zaciekawił mnie system AmigaOS jak i AROS. Mam małe pytanko dotyczące budowy(struktury) systemu AmigaOS , ewentualnie AROS chodzi mi głównie o cos takiego jak na schemacie(BeOSa) [http://en.wikipedia.org/wiki/BeOS_API]. Czy system amigowy ma sterowniki w jadrze czy w przestrzeni użytkownika jak np system Minix 3. Bardzo prosze o nakreślenie mi takiego schematu AmigaOS, co pozwoli mi lepiej zrozumiec jego strukture. Ps podobny temat zalozyłem na forum execa, ale dopiero jedna osoba podjeła sie próby wyjasnienia mi tego tematu.
[#2] Re: Budowa(struktura)systemu AmigaOS

@amos, post #1

W amigaosie nie masz pamięci wirtualnej więc kazdy proces może odwołać się do tej samej pamięci (np. adres oxDEADBEEF w jednym i drugim i trzcim procesie wskazuje na to samo miejsce w pamięci fizycznej), idąc dalej nie ma rozróżnienia na kernel i przestrzeń użytkownika, sam kernel czyli powiedzmy exec.library zajmuje okolo 15kb reszta systemu dzieli się na:

- biblioteki (libraries)
- urządzenia (devices)
- filesystemy
- handlery
- resourcesy
etc etc,

poszukaj na necie RKRM (rom kernel referencje manual), tam jest dosc dobrze wyjaśnione

ps. takiego schematu zrobić się nie da bo na amidze wszystko jesli chodzi o sprzęt jest zrobione niskopoziomowo

[#3] Re: Budowa(struktura)systemu AmigaOS

@rzookol, post #2

W amigaosie nie masz pamięci wirtualnej no tak jak Twoja wiedza na temat Aosa jest taka to już się nie dziwię, że mi Twoje dzieło programistyczne się nie odpala na AOne
[#4] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #3

wiedziałem, że ktoś sie do tego przyczepi,
wyjaśniam więc, chodziło mi o standardowy amigaos, a nie o wersje 4.x, dlatego też podając wielkość exec.library podalem standardową wielkość około 15 kb

jeśli chodzi o pamięc wirtualną na os4 to nie pamiętam już czy każdy proces ma oddzielną przestrzeń adresową, jeśli więsz więcej to mnie oświeć ale strzelam że nie ma

że mi Twoje dzieło programistyczne się nie odpala na AOne

a log gdzie ? przecież nie jestem duchem swiętym i nie moge bez sprzętu i systemu wyłapywać błędy, szczególnie na miernej jakości płytach głównych. O ile kojarze na os4.0 z jakiś powodów nie dziala. Shinkuro kompiluje i testuje na os4 i u niego działa, podobnie jak działa u mnie na os4emu i u paru innych osób. Po za tym jesli chodzi o jakość dzieł programistycznych to dzięki mojemu programowi wyszedł jeden bug w samym os4. I na koniec pytanie controlne: czy urltext.mcc posiadasz ?

[#5] Re: Budowa(struktura)systemu AmigaOS

@rzookol, post #2

ps. takiego schematu zrobić się nie da...

Ale spróbować zawsze można (tylko najpierw trzeba się z lekka upalić ;) ). No i od razu możemy zapomnieć o nudnych diagramach blokowych - to stanowczo nie będzie pasowało do stylu AmigaOS.

@amos - mały disclamer: grafika zdaje się sugerować, że software (np. gra) może odwoływać się do sprzętu zarówno za pomocą systemu jak i bezpośrednio, i tak jest w istocie w przypadku Amigi. Nie trzeba specjalnie się wysilać, by znaleźć program, który (zamiast grzecznie męczyć się odtwarzając dźwięk przez audio.device) wali samplami bezpośrednio po Pauli i/lub robi jakieś sztuczki z grafiką, czy nawet ma własne "sposoby" na odwołania do napędu dyskietek... Właściwie, to trzeba cholernie się napocić, żeby znaleźć program, który korzysta wyłącznie z rozwiązań systemowych (przynajmniej na AOS 1.x-3.x).

[#6] Re: Budowa(struktura)systemu AmigaOS

@rzookol, post #4

wiedziałem, że ktoś sie do tego przyczepi,
To po co prowokujesz? Zauważyłeś w jakim dziale jesteśmy? Pewnie, najlepiej jeżdzić po nowym OS-ie jak po łysej kobyle, - a potem się dziwić że się obrażamy i wołać pokój pokój. To się ładnie nazywa hipokryzja.
A co do Twojego programu po prostu NIC się nie dzieje tylko Task na liście. Grim nic nie wyrzuca. Urltext mam chociaż podaj jakiś inny program który z niej korzysta to sprawdzę czy się odpala. Coś mi się przypomniało, że chyba Spock Ministra w pierwszej wersji podobnie się zachowywał. Może On wie gdzie robisz błąd.
[#7] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #6

Ale zaraz, przecież jedyną rzeczą która się (prawie na pewno) nie zgadza w przypadku OS4 jest rozmiar zajmowany przez exec (chociażby dlatego, że binarki dla PPC są większe).
Co do ochrony pamięci (a to miał na mysli rzookol pisząc o pamięci wirtualnej), to chyba nadal w OS4 nie ma... a jesli ma, to podaj szczegóły, bo wszyscy chętnie poczytają (a zwłaszcza ten kto zadał pytanie zakładając ten wątek).
Co do jeżdzenia "jak po łysej kobyle", to jakoś rzookol złego słowa nie powiedział o OS4, ale ty o nim napisałeś kilka słów ("hipokryzja", "dzieło programistyczne" w ironicznym znaczeniu). Więc kto tu właściwie po kim jeździ jak po łysej kobyle?
[#8] Re: Budowa(struktura)systemu AmigaOS

@wali7, post #7

Z tą ochroną pamięci to jest tak, że trzeba najpierw zdefiniować co rozumiemy przez "ochronę pamięci". Jeżeli rozumiemy to, co np. w systemach uniksowych, czy nowoczesnych wersjach Windows (od 2000), a więc oddzielną przestrzeń adresową dla każdego procesu, to AmigaOS 4 nie ma ochrony pamięci. Z drugiej strony np. obszar zawierający kod kernela jest zabezpieczony przed zapisem, ale taką samą ochronę pamięci ma również MorphOS.

[#9] Re: Budowa(struktura)systemu AmigaOS

@amos, post #1

Ponieważ wszelakie odmiany AmigaOS nie mają pełnej ochrony pamięci rozumianej jako oddzielne przestrzenie adresowe dla procesów, nie ma w nim podziału na kernel i tzw. userland. Wszystko działa we wspólnej przestrzeni adresowej. Amiga OS jest bardzo modułowy i bywa czasem nazywany systemem z mikrokernelem. Wszystkie biblioteki, sterowniki i urządzenia logiczne są bibliotekami współdzielonymi ładowanymi dynamicznie, z tym, że de facto nie wymagają dynamicznego linkowania (jak linuksowe *.so, czy windowsowe *.dll), ponieważ ich API nie jest zdefiniowane przez symbole, a przez tablicę skoków do funkcji (kompilator generuje w aplikacji takie skoki za pomocą odpowiednich makr).

Co ciekawe większość funkcjonalności, które bywają w innych systemach wbudowane w kernel, w AmigaOS są oddzielnymi, opcjonalnymi modułami. Dotyczy to na przykład stosu TCP/IP, czy obsługi USB. Nie występuje tu pojęcie "sterownika wkompilowanego w kernel", sprzęt jest rozpoznawany dynamicznie i ładują się tylko sterowniki do rzeczywiście istniejącego sprzętu.

Jeżeli interesowałyby Cię konkretne szczegóły pytaj śmiało, a "wojenką" toczoną tu przez co poniektórych się za bardzo nie przejmuj...

[#10] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #6

Jak sam zauważyłeś wyszło, że po raz kolejny miałem racje, powinieneś sie przyznać do błędu, tak będzi prościej i nie wyjdziesz na hipokrytę. Poza tym nie prowokuję, co najwyżej niektórzy są przewrażliwieni na to co piszę.

co do scandala to dalej bez debuglogu nic nie poradzę, sprawdź wersje 68k i spróbuj uruchomić to cudo programistyczne z shella (a raczej z kingcona bo chyba na os4 nie korzysta się z wbudowanego shella gdyż jest zbyt słaby)

[#11] Re: Budowa(struktura)systemu AmigaOS

@rzookol, post #4

"jeśli chodzi o pamięc wirtualną na os4 to nie pamiętam już czy każdy proces ma oddzielną przestrzeń adresową, jeśli więsz więcej to mnie oświeć ale strzelam że nie ma"

to nie ma nic wspolnego z pamiecia wirtualna. amigaos 4.x tak samo jak morphos i pewnie aros maja pamiec wirtualna (jest ona mapowana na pamiec fizyczna przez mmu).

[#12] Re: Budowa(struktura)systemu AmigaOS

@kiero, post #11

według mnie ma,
uważasz, że może istnieć system, w którym procesy mają oddzielne przestrzenie adresowe bez pamięci wirtualnej?

ps. oczywiście w pierwszym poście zbyt mocno uprosciłem tę kwestię ale chodziło tylko o to, że w amigaosach nie ma mocnego rozróżnienia na kernel i userspace



Ostatnia modyfikacja: 26.08.2009 16:36:36
[#13] Re: Budowa(struktura)systemu AmigaOS

@rzookol, post #12

nie, nie moga istniec oddzielne przestrzenie adresowe bez pamieci witualnej, ale to dalej nie ma nic do tego co napisales. pamiec moze byc witualna a wszystkie procesy dalej moga znajdowac sie w jednej pzestrzeni.

[#14] Re: Budowa(struktura)systemu AmigaOS

@wali7, post #7

Co do ochrony pamięci (a to miał na mysli rzookol pisząc o pamięci wirtualnej)
Wybacz ale widocznie nie jestem aż tak inteligenty żeby czytać między wierszami i nie pojałem Jego wypowiedźi tak jak Ty. Co do hipokryzji to żadnej ironii w tym nie było bo niby czemu miała by być? A co do dzieła programistycznego, to co byś napisał o programie który się wogóle nie odpala, a o którym ukazał się nawet njus że wyszedł? Po co pisać njusy o programie który nie dxziała?
[#15] Re: Budowa(struktura)systemu AmigaOS

@rzookol, post #10

Dobra jak widzę wszystko rozbija się o definicje a te każda strona podaje swoje. Tylko jedno pytanie czy przy 512 MB pamięci fizycznej możesz na Mosie wrzucić 700 Mb film do RamDisku? Bo na AmigaOsie możesz.
Co do Twojego programu to Grim nie grimuje z jakiego programu chcesz logi?
[#16] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #15

tak na amigaosie4 można przemapować pamięc na dysk, a na mosie nie - wiem o tym,

ale pamięc wirtualna przydaje się jak bylo zresztą napisane wyżej do tworzenia systemu, gdzie każdy proces ma oddzielną przestrzeń adresową (w tym kernel), i ja pisząc o tym odpowiadalem na pytanie z posta nr1: czyli,
nie, nie ma różnicy między jądrem a oprogramowaniem bo nie ma oddzielnych przestrzeni adresowych, nie ma typowego userspace i kernelspace, etc etc

dyskusje na temat pamięci wirtualnej i używania dysku jako pamięc nie miały nic wspólnego z pytaniami zadanymi w temacie wątku

co do logów to myśle, że nalezy zacząć od Snoopy (tak sie chyba nazywa wersja snoopdosa na os4) i próby uruchomienia w shellu przez wpisanie nazwy

Po co pisać njusy o programie który nie dxziała?

Tobie nie działa, innym działa. Można odwrócic pałeczkę i zapytać: po co news o AmigaOS4 dla pega skoro powodował dużo problemów z instalacją i u częsci osób nie działał, jakoś wtedy nie marudziłes?

ps. masz w ogóle skaner jakiś supportowany?

[#17] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #15

możesz na Mosie wrzucić 700 Mb film do RamDisku? Bo na AmigaOsie możesz.

Mogę. Tylko po co? Filmy są do oglądania, a nie do kopiowania do RAM:. A oglądanie filmów znacznie lepiej działa pod MorphOS-em .

[#18] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #15

definicja pamieci wirtualnej jest jedna i powinienes sie doedukowac. posiadanie/uzywanie jej przez system nie oznacza, ze mozna uzyc wiecej pamieci niz jest jej fizycznie dostepne w komputerze.

[#19] Re: Budowa(struktura)systemu AmigaOS

@TomK, post #14

Hmmm, ale innym uzytkownikom OS4 się odpala (chociażby osobie która ten program kompiluje). Więc jest drugie wyjaśnienie - masz cos skopane w systemie.
[#20] Re: Budowa(struktura)systemu AmigaOS

@wali7, post #19

U mnie na AOS4 Classic tez sie odpala. Podobnie jaki wersja 68k, ktora tez sie odpala na AOS4. Wiecej nie moge sprawdzic, poniewaz nie mam skanera.
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem