BeOS

Från Unix.se, den fria unixresursen.

Innehåll

Intro

BeOS är inte Unix, men däremot ganska POSIX-kompatibelt. Uppenbara skillnader är att BeOS inte använder X, och att filsystemets mappstruktur är annorlunda. BeOS kärna var ursprungligen mer mikrokärna än den nuvarande modulära kärnan. Filsystemet var i en mycket tidig version en databas utanför kärnan, men designen hade synkroniseringsproblem så man gick över till det egentillverkade filsystemet BFS. Nätverksstacken fick ligga kvar i userland. Be hade tänkt byta ut den, och hann släppa en kärn-baserad nätverksstack som beta ett tag innan de sålde verksamheten.

BeOS-användare brukar uppskatta att systemet bootar snabbt, är extremt lättanvänt och känns bra även under belastning. Det tillåter användaren att göra sina egna metadatatillämpningar, och har trevliga mediafunktioner. BeOS har stött SMP sen begynnelsen, och operativet är riktigt bra trådat.

http://wiki.bebits.com/page/NewbieInfo

Filsystem

Roten i filsystemet är virtuell och inte en reell partition. Filsystem kan monteras nedanför rot, och mappar och symboliska länkar kan skapas, men dessa sparas inte vid omstart. Bootpartitionen monteras automatiskt som /boot och länkas symboliskt som /{volymnamn}

/boot/home> ls -lp /
total 2 
drwxr-xr-x   1 baron users  2048 May  5 09:22 boot/
drwxr-x---   1 baron users     0 May  7 07:22 dev/
drwxrwxrwx   1 baron users     0 May  7 06:40 pipe/ 
l---------   1 baron users     0 May  7 07:22 MinVolym -> /boot/
l---------   1 baron users     0 May  7 07:22 bin -> /boot/beos/bin/
l---------   1 baron users     0 May  7 07:22 etc -> /boot/beos/etc/
l---------   1 baron users     0 May  7 07:22 system -> /boot/beos/system/
l---------   1 baron users     0 May  7 07:22 tmp -> /boot/var/tmp/
l---------   1 baron users     0 May  7 05:22 usr -> /boot/usr
l---------   1 baron users     0 May  7 07:22 var -> /boot/var/

Bara /boot, /dev och /pipe är egentliga filsystem, varav /dev och /pipe är virtuella, resten är länkar in i /boot. framförallt för att underlätta för unixprogram.

BeOS installeras på 1 partition (ungefär som Windows C: eller MacOS systempartition) till skillnad från vad som är brukligt i unixmiljöer. Den disk du ser på skivbordet har namnet {volymnamn} och mapparna i den är underkatalogerna till /boot, dvs apps, beos, demos, develop, home, optional, preferences varav /boot/beos och /boot/home är de enda som verkligen behövs.

Alltså, det du ser i / inte är samma som du ser när du öppnar din disk (tänk C:) från BeOS skrivbord. Roten ligger under bootdisken. Från skrivbordsmiljön används skrivbordsytan som en mer handfast metafor för det som ligger "under" disken, vilket används i Öppna/Spara dialoger, precis som i ursprungliga MacOS. En möjlig källa till förvirring för Unix-användare, kanske, som är vana att kunna 'cd ..' upp till roten även i sin grafiska filhanterare och "se allt". Här har BeOS en annan design, men du kan fortfarande se allt, i princip, om du tänker på att /etc egentligen ligger i /boot/beos/etc.

/boot/home> df
Mount            Type     Total    Free     Flags   Device
---------------- -------- -------- -------- ------- --------------------------
/                rootfs          0        0 ------W
/dev             devfs           0        0 ------W
/pipe            pipefs          0        0 ------W
/boot            bfs      28667992 18158308 QAM-P-W /dev/disk/ide/ata/0/master/0/0_1

Flaggorna står för:

  • Q: kan queries
  • A: kan attribut
  • M: kan mime-typning
  • S: delad
  • R: löstagbar
  • W: skrivbar


BeOS har en egen standard för 'extended attributes' som som till skillnad från POSIX är typade. Ett av standardattributen är filtypsattributet som håller en textsträng med filens MIME-typ. Filsystemet kan sättas att indexera enskilda attribut, och kan sedan frågas efter filer som matchar en viss query på ett visst attribut eller kombination av attribut, ungefär som en databas.

BeOS filsystem kallas för The Be Filesystem, BFS eller BeFS. Det är ett 64-bitars, journalförande filsystem med metadatamöjligheter tänkt för persondatorer och mediatillämpningar med stora filer. Det finns beskrivet i en bok av dess skapare, Dominic Giampaolo.

Programmering

Uppskattat platformsspecifikt API i C/C++ beskrivet i The Be Book (http://www.beunited.org/bebook/)

POSIX-kompatibelt C-API med några skönhetsfläckar. Till exempel så är mmap() helt frånvarande.

Textskal

BeOS bootar direkt till grafiskt gränssnitt i likhet med Amiga, Mac OS, Windows, m fl, men erbjuder på samma sätt tillgång till ett textgränssnitt, där tolken som standard är 'bash'.


Historia

Releases (http://wiki.bebits.com/page/BeOsReleases)

Timeline (http://wiki.bebits.com/page/BeTimeline)

Be, Inc. (http://wiki.bebits.com/page/BeIncorporated)


Hårdvara

The BeBox (http://wiki.bebits.com/page/BeBox)

BeBox.nu (http://www.bebox.nu/)


Framtiden

Klonprojektet Haiku (http://www.haiku-os.org) - tidigare känt som OpenBeOS

Licenstillverkaren yellowTAB (http://www.yellowtab.de) - med produkten Zeta

Haiku jobbar på en kompatibel nyimplementering av BeOS, under öppen MIT-licens, och hoppas kunna vidareutveckla och spränga de gamla begränsningarna. Filsystemet OpenBFS har adopterats av SkyOS (http://www.skyos.org/). Delar av Haiku har använts i Cosmoe (http://www.cosmoe.com/).

Tyska yellowTAB jobbar på att vidareutveckla ursprungliga BeOS och antas ha licenserat koden från Be, Inc. (http://www.beincorporated.com/) eller Palm (http://www.palm.com/us/).

Gemenskap

Nyhetssajter: Haiku News (http://www.haikunews.org) Zeta News (http://www.zetanews.com)

Program, mm: BeBits (http://www.bebits.com)

Fildelning: BeShare (http://www.beshare.com)

Chat: Kanalen #haiku på irc.freenode.net

Personliga verktyg