GNU/Fiwix 0.3.3

Megjelent a GNU/Fiwix 0.3.3-as verziója. Benne számos hibajavítás és néhány új fejlesztés. A projekt jelenlegi helyzete leolvasható a status oldalról. Bővebben a projekt honlpaján.

Hozzászólások

ígéretes, lehet, hogy megszületett a linux utódja, ha képesek tartani a céljukat, de csak x86-on. (de ezt még pár évig kétlem, mivel a forrás szvsz nem adták ki, majd a 1.0 verzió után [FIXME] )

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

ismerem
de ha megtudják csinálni a 99% linux linux kompatibilitást akkor linux kernel ki fiwix be és megy nagyobb buherálás nélkül. Minix-re azért kicsit nagyobb meló portonli a programokat (meg azért micro, [ -> de inkább nem folytatom] ). Amugy ha annyira jó lenne a minix akkor már réges rég több helyen haszálnák. A minix-oldalán ha elolvasod akkor elsődleges platform a beépített rendszerek a fiwix meg szerintem általános.

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

Amugy ha annyira jó lenne a minix akkor már réges rég több helyen haszálnák.

No offense, de a MINIX-nek elvileg csak a 3. verziója az, amit ilyen általános célú OS-nek szántak, az első kettő inkább tansegédlet.
It doesn't matter if you like my song as long as you can hear me sing

ezzel tiszzába vagyok, a linux még ennyinek sem indult, csupán egy hobby os-nek és mi lett belöle és akkor már kint volt a minix 1.(3?).

szerk:
/*
részben forkjánaki is tekinthetjük a linux-ot, de ezt hülyeség lenne állítani, mert csak az fs-t vette át és az volt a devel platform
*/

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

> linux kernel ki fiwix be és megy nagyobb buherálás nélkül

Ki van írva nagy betűkkel, hogy: "It is designed and developed mainly for educational purposes, so the kernel code is kept as simple as possible for the benefit of students."

Nekem nem tűnik vonzó jövőbeli alternatívának.

Megint ez a mikrokernel vs. monolitikus vita... amennyit én tudok, ahol teljesítmény kell, oda monolitikus (Linux, BSD, Solaris etc.) vagy hibrid (Windows, XNU), a tisztán micro implementációkat csak a nagyobb megbízhatóságot igénylő rendszerekhez használják.
It doesn't matter if you like my song as long as you can hear me sing

igen ez általában igy van, (nem atomreaktort üzemeltetek itthon és nekem szimpatikusabb a monolitikus, linuxnál is haszálok azt mindent kernelbe forgatok és a modul támogatást meg kikapcsolom - igy is gyorsabb)

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

tudom mirol van szó, de a moduláris monolitikus és a statikus monolitikus között is van sebességkülömbség.

(microkernel.: csak a legszükségesebb alrendserek kernel space-ben, többi rendszerfunkcó user-spacben fut(fs, hw-driverek)), amugy az embert nem kell 100%-osan hülyének nézni, attól hogy kétértelműen fogalmazok, még tudom hogy mit tudok, a faszom beléd.

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

thx
(csak ma az agyamat több mindenel felhúzták, nem csak infotmatikai téren, de szerintem nem vagy kiváncsi a háterére ...)

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

spec, most hogy utánanéztem pár hozzászólásodnak valahogy nagyon nem tudsz meghatni.
valahogy inkább az ilyenek miatt mint te romlik a hup szinvonala, mivel mindig a trollkodást kezded ...
másik érdemleges hozzászólásaid aránya amennyit eddig láttam 100-ból talán 2
és ahogy elnézem linuxot nem nagyon láttál meg.

http://hup.hu/node/39205#comment-359912
http://hup.hu/node/32982#comment-286580
http://hup.hu/node/33047#comment-287303

részemröl a személyeskedést itt befejeztem és inkább a szakmai részére koncentrálok.

szerk.:
(*rühellek másokat fikázni*)

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

"tudom mirol van szó, de a moduláris monolitikus és a statikus monolitikus között is van sebességkülömbség."

Annyi mindenképp amíg az elején berántja a modult. Ami be van forgatva a kernelbe, annak a HW init részei bootkor futnak, a moduloknak meg modprobe-kor. Ennyi, hatalmas segességkülönbség.

Ja, mutatok egy trukkot:

#!/bin/sh
echo -n i8042 > /sys/bus/platform/drivers/i8042/unbind
sleep 3
echo -n i8042 > /sys/bus/platform/drivers/i8042/bind

(gyk.: az i8042 a keyboard/ps2/serial controller IC drivere, szóval do not panic 3s után meggyógyul...)

Nálam pl. ez a cucc érthető okokból nem modulban van, mégis így el lehet érni a HW üjrainicializálását. Szóval az első echo gyakorlatilag kitölti a "modult". Tanulság: futásidőben semmi különbség nincs abban, hogy valami fixen be van forgatva vagy modulban csücsül. Gyakorlatilag az összes driver kódja úgy néz ki, mintha modulban lenne.

ez a fixen beforgatás-t még annó két éve kezdtem el, mert a vanilla kernelben levő radeon driver ha modulban volt akkor iszonyat lassú volt és kaptam prá Oops-ot és miután befeogattam fixen akkor már semmi gond nem volt. Azóta meg megmaradt a mindent fixen beforgatni
Amugy a trükköt köszi..

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

igen, az volt, de ez még a 2.6.13-as környékén volt és igy lehetett orvosolni.
Azóta meg modulokat nem haszálom (megszokás)

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

szerintem inkább csak azok tanulnak belőle így, akik írják. amire eléri az 1.0 állapotot és kiadják a forrását, az még jó sokára lesz. én örülnék neki ha inkább már ebben az állapotában kiadnák, hátha 6-8 év mulva már nem érdekel annyitra a dolog
---
ezt kell csinálni-e?

http://www.minix3.org/


MINIX 3 is initially targeted at the following areas:
Applications where very high reliability is required
Single-chip, small-RAM, low-power, $100 laptops for Third-World children
Embedded systems (e.g., cameras, DVD recorders, cell phones)
Applications where the GPL is too restrictive (MINIX 3 uses a BSD-type license)
Education (e.g., operating systems courses at universities)

Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.

debian 4.0 - linux-2.6.22.1-pancs1-wifi1 - 2.6.22.1 kernel madwifivel itt

Es miert jo az embereknek ez a fiwix? Vagy csak valaki hobbyprojectje hogy beleassa magat a temaba?

Hat mit ne mondja szepen mindeki melle lot mi a mikro es monolitikus kernel kozt a kulonbseg.
A fo kulbseg az, hogy a monolitikus kernelnel minden alrendszer azonos adat es kod szegmenst hasznal, azaz a kulonbozo folyamatok bele lathatnak egymas valtozoiba. Azaz 1 halozati folyamat bele nyulhat 1 memoria folymatba. A micronal minden alrendszernek vagy amit ugy akarnak a fejlesztok kulon sajat kod es adat szegmense van. ez azt jeleni, hogy mondjuk a halozati alrendszer csak API-n keresztul, tud mondjuk a filerendszer hozza verni. A minix ha jol emlekszem csak az utemezo volt a micor kernel resze, a FS, memoria, es halozat kulon futott. Igaz maga fizikailag 1 image-ben volt minden bele forditva, de a futaskor mar mint kulon processzek jelentek meg. Amit siman ki is lehet kill-elni. A linux kernel monolitukis meg akor is ha modulokban van, max lehhet modularis monolitikus kernelnek hivni. Itt a modul lenyegeben futas idoben linkelodik bele a kernelbe. es nem az a lenyek user space fut vagy sem, A minix minden 0. ringen van. tehat amikor api hivas van nem kell kornyezett valtni, 3. rol 0. ringre valtani. Amit most a linux nal probalnak a userspace api-val ott igen is lesz kornyezett valtas. 3. 0. ra. Emiatt lesz teljesitmeny csokkenes.

<#
<<<#######>>>
\ /
||
MACi

There are four privilege rings, from ring 0 to ring 3. Ring 0 has the most
privileges, and can access all instructions and memory addresses. The operating system usually
runs in ring 0. Ring 1 and 2 have less privileges and are used for operating system services.
Ring 3 has the least privileges and is used for user applications.

a minixnel a kernel ring0 a kernel taszkok meg ring1

de amugy jah

Amit írtál azért hülyeség félig, mert bár igaz, hogy a monolitikus kerneleknél minden alrendszer egy kód és adat szegmensen van, de ez egyrészről csak i386 specifikus tulajdonság, másrészről nem ez a releváns különbség a mikrokernellel szemben. Lehet írni mikrokernelt akár szegmentálást nem támogató processzorra is (lásd a Minix sem csak i386-on fut ;), az igazi különbség az, hogy nem ugyanazon a privilégium szinten fut a kernel alrendszere *és* más a címtér. Viszont pont emiatt a címtér szeparáció miatt van szükség más kommunikációs módszerre (message passing), hisz stack/heap segítségével nem lehet adatot cserélni. Ez az igazán lassú része egyébként, meg a címtér váltás.

Amúgy a Linux-ból is csináltak olyan változatot pár éve az egyik egyetemen, amelyik szegmentációra alapuló szeparációt valósít meg... => google://Nooks

Nos amit irsz azert erdekes, mert a minix erdekes modon megy 8086-os is. Ami azert furcsa, mert nincs benne vedett mod, ergo vedelmi szintek se.

A segmentalas ersd ugy, hogy nem azonos memoria teruleten tarolja az adatokat. DE meg a c64 is megoldato igaz segmentalni nem tudta a memoriat. Segmentalni minden korszeru proci tud! Ami intel specifikus a desciptor selector paros, ezzel kevered a segmantalast, mert ez valoban nincs a 8086-ban.

sot microkerneles linuxot is csinaltak... mklinux neven az apple kiserletezzet vele de aztan darwin lett belole.

"alrendszere *és* más a címtér" igen ez a lenyeg mas a cimter azaz mas az adat es kod segmens. Tehat mas memoria tartomanyban van, es az akkkor is mukodik ha nincs vedelemi gyuro. Mert az csak azt akadalyoza meg, hogy alacsonyabb szintrol nem ferek hozza magasabb szintu memoria teruletekhez, meg korlatozz par utasitas vegre hajtasaban.

Megnezheted mas terminologiaban is segment-nek hivjak az elszeparalt memoria teruleteket.

De inkabb nem vitazom van vagy 7 eve, hogy olvasta Andrew S. Tanenbaum konyvet :-D lehet ez lesz ujra az esti olvasmany :-D
<#
<<<#######>>>
\ /
||
MACi

> Ami azert furcsa, mert nincs benne vedett mod, ergo vedelmi szintek se.

ergo az a minix nem mikrokernel (vedelem nelkul ugyebar egy adott logikai alrendszer ugy tur bele egy masikba, ahogy akar, szoges ellentetben a mikrokernelek egyik tervezesi elvevel).

> Segmentalni minden korszeru proci tud!

mondanal nehany peldat (proci + feature neve/rovid leirasa)?

> mas a cimter azaz mas az adat es kod segmens

van itt egy kis fogalmi keveredes, ha jol latom. a cimter a lapozos logikaval rendelkezo prociknal hasznalt fogalom, mondjuk i386 eseten az, amit egy adott cr3 ertek meghataroz. ennek nincs sok koze a szegmentalashoz, plane, hogy egy adott logikai alrendszer kodja/adata kozos cimterben van (monolitikus kernelnel minden alrendszer ugyanabban, mikrokernelnel mindenki a sajatjaban).

> Tehat mas memoria tartomanyban van, es az akkor is mukodik ha nincs vedelemi gyuru. Mert az csak azt akadalyoza meg, hogy alacsonyabb
> szintrol nem ferek hozza magasabb szintu memoria teruletekhez, meg korlatozz par utasitas vegre hajtasaban.

a ring-ek hasznalata nelkul mindenki ugyanazon a privilegium szinten lenne (ring-0) ergo az ilyen nem mikrokernel a szeparacio teljes hianya miatt.

> Megnezheted mas terminologiaban is segment-nek hivjak az elszeparalt memoria teruleteket.

hol lehet ezt megnezni? en sok helyen lattam mar szegmens fogalmat, mindenhol mast jelentett (ebben a szalban speciel i386-rol volt szo, azt ismerem).

Na most a cr3 egy lapozo tablat hataroz meg (page directory) amiben nyilvan tarja az operacios rendszer melyik lap let kilapozva azaz nincs jelen, vagy epp a memoriaban van azaz jelen van. Mivel ha CPU kap 1 memoria kerest ami olyan lapra hivatkozik ami nincs jelen a tabla szerint lesz 1 (#14)kivetel, ami atkerul az OS-hez akkor az os 2 dolgot tehet megkeresi swapban a lapot es beolvassa es vissza adja a vezerlest a kivetel elotti utasitashoz, vagy jelzi a felhasznalofele "Segmentation fault." "kek halal" formajaban.
Nos a segmens pedig nem mas mint a behatarolt memoria terulet. Aminelkul nem lehetne 1 mai OS-sem mukokepes. Mivel ez tesz lehetove, hogy a program kod szabado barhova betoltheto a memoriaba. a C64 6510-es CPU nem tudta szegmentalni a memoria, ezert mindig meg kellett hatarozni a programnal, hogy milyen memoria cimre lesz betoltve, nem basis hanem assemblyrol beszelek.

mind1 milyen a CPU a lenyeg a kovetkezo a segmensnek van 1 fizikai kezdo cime(CS) es 1 pointer(alt IP a neve) ami ehhez kepest meghatarozza fizikai cimet. Nos a programban az elagazasok az IP manipulaljak ezert a program tetszelogese byte-al eltolhato a memoroiaban. Ezert lehet lapozni is, mivel lehet ha viszakerul a lap mashol lesz fizikailag a segmens mint elotte volt.
Ha mar virtualis memoria kezelesnel tartunk, akkor majd nezd meg 1 GDT, vagy LDT felepiteset ott is van 1 kezdo fizikai cim, hogy honnan indul es mekora a segmens aminek a meretet byteban vagy 4K meretu lapban adhato meg. Valamint a futathato vagy sem.

UI: a segment magyar fordítása címtér.

CPU leirasok: http://download.boulder.ibm.com/ibmdl/pub/software/dw/library/es-archpu…
29. oldal "Segment Lookaside Buffer" ami a GDT/LTD-nek felelmeg az intelnek

Sun SPARC ftp://docs-pdf.sun.com/816-1681/816-1681.pdf itt a segmenst windows-nak hivjak.

Intel Itanium: http://www.osc.edu/supercomputing/manuals/ia64/docs2/asm_lan.pdf
81.oldal The architecture that defines application level
resources which include: user-level instructions, addressing
modes, segmentation,
and user visible register files. instruction tag A label that
refers to an instruction.

szegmens jelentése: http://www.tintakiado.hu/cgi-bin/e-szotar/id/search.cgi?cszo=szegmens

a ring-ek hasznalata nelkul mindenki ugyanazon a privilegium szinten lenne (ring-0) ergo az ilyen nem mikrokernel a szeparacio teljes hianya miatt. Miert ne lenne szepariaco, a userprogramok nincsenek szeparaolva? mindeki sajat kis kod, es adat segmense van es jol elvannak egymas mellett, hol ott azonos ring-en vannak.
ez a lenyeg: "(monolitikus kernelnel minden alrendszer ugyanabban, mikrokernelnel mindenki a sajatjaban)." hogy a monolituks kernele 1 hatalmas adathalazvan es 1 hatalams kode halmaz amiben benne van minden. A micronal a levalasztott alreszeg sajat kod halmazuk es adat halmazuk van. kulon elszeparalva az irrelevans, hogy mas vedelmi szinten vannak e.

<#
<<<#######>>>
\ /
||
MACi

Ha mar virtualis memoria kezelesnel tartunk, akkor majd nezd meg 1 GDT, vagy LDT felepiteset

Nyihihi, ezen sikítva röhögtem. :))

Szerintem te nézd meg inkább, hogy a PaX mit művel SEGMEXEC alatt a GDT-vel és LDT-vel, hogy non-exec stack és heap memóriakezelést valósítson meg az NX-el nem rendelkező i386 architekturán... ;)

csak a nagyobb zoldsegekre valaszolok, mert ugy latom jelentos fogalmi zavarokkal kuzdesz, amit mind tisztazni sajna most nincs idom.

> Nos a segmens pedig nem mas mint a behatarolt memoria terulet.
> Aminelkul nem lehetne 1 mai OS-sem mukokepes.

de lehet, sot, kb. minden mai jelentos OS a szegmentalast effektive kihagyva mukodik (flat model-nek hivjak i386-on).

> Mivel ez tesz lehetove, hogy a program kod szabado barhova betoltheto a memoriaba.

nem ez, hanem a virtualis memoria (lapozo logika) hasznalata.

> Nos a programban az elagazasok az IP manipulaljak ezert a program
> tetszelogese byte-al eltolhato a memoroiaban. Ezert lehet lapozni is,
> mivel lehet ha viszakerul a lap mashol lesz fizikailag a segmens mint
> elotte volt.

virtualis memoria (lapozas) hasznalata eseten a szegmentalasnak semmi koze a fizikai cimekhez.

> Ha mar virtualis memoria kezelesnel tartunk, akkor majd nezd meg
> 1 GDT, vagy LDT felepiteset ott is van 1 kezdo fizikai cim,

virtualis memoria (lapozas) hasznalata eseten a GDTR/LDTR/deszkriptorok nem fizikai, hanem linearis (virtualis) cimeket tartalmaznak.

> UI: a segment magyar fordítása címtér.

a segment magyar forditasa szegmens, az 'address space' magyar forditasa cimter.

> 29. oldal "Segment Lookaside Buffer" ami a GDT/LTD-nek felelmeg az intelnek

a powerpc szegmenseknek semmi koze az IA-32 fele szegmentalashoz. csak azert mert az IBM a szegmens szot hasznalta, meg nem lesz hirtelen hasonlo ertelmu, mint az Intel fele szegmens.

> Sun SPARC ftp://docs-pdf.sun.com/816-1681/816-1681.pdf itt a segmenst windows-nak hivjak.

nem hivjak, a regiszterablakoknak semmi kozuk szegmentalashoz.

> szegmens jelentése: http://www.tintakiado.hu/cgi-bin/e-szotar/id/search.cgi?cszo=szegmens

ez azt mondja, hogy "szegmens lásd szegmentum", ami pedig azt mondja, hogy "szelet, szelvény, körszelet" ill. "szövetmetszet". egyiknek sincs koze a szamitastechnikai fogalomhoz.

> Miert ne lenne szepariaco, a userprogramok nincsenek szeparaolva?
> mindeki sajat kis kod, es adat segmense van es jol elvannak egymas
> mellett, hol ott azonos ring-en vannak.

ha mindenki ring-0-ban fut, akkor mindenki szabadon garazdalkodhat a procik eroforrasaival, memoriaval, stb. ez nem mikrokernel.