![[ Datateknik ]](../bilder/DTlogo.gif)
Apples nya serveroperativsystem MacOS X Server ska konkurrera med Microsofts Windows NT, dels genom att vara en stabilare plattform och dels genom att locka utvecklare med sin Unix-bas. Officiellt färdigdatum är "under september-oktober 1998".
För ett år sedan talade Apple-folket fortfarande om Rhapsody, serverplattformen som skulle ersätta operativsystemet MacOS. Planerna har ändrats något under resans gång. Istället blir det en uppgradering av MacOS till MacOS X Server ("X" som i "tio") som blir en ren serverplattform, det vill säga ingen uppgradering för klientdatorer. Klientversionen av MacOS X ligger någonstans i den avlägsna framtiden sommaren 1999.
Tanken är dock densamma som när man började tala om Rhapsody: att ta upp konkurrensen med Microsoft genom att utveckla ett operativsystem som kan konkurrera med Windows NT.
Det här innebär att MacOS kommer att finnas i två utvecklingslinjer, dels den nuvarande som fungerar på PowerPC, dels den nya med MacOS X Server som bara går på de nyaste datorerna med den så kallade G3-processorn (även kallade PowerPC 750). Det finns både bärbara och stationära datorer med den processorn.
-- MacOS X kräver G3, och nuförtiden rekommenderar vi dessutom alltid G3, säger Eric Anderbjörk, produktchef på svenska Apple Computer.
Nej, Apple tror sig inte om att ta upp kampen med Microsoft på allvar. Det är inga brösttoner som hörs, ingen förhoppning om att sopa Windows NT av mattan. Men det är å andra sidan ingen uppgiven stämning på Apple Computer. Framtidsoptimismen är tillbaka, och nu vill de nå fler utvecklare med sitt nya server-OS.
-- Vi hävdar bara ödmjukt att det finns inget bättre, mer användarvänligt, stabilt och kompatibelt operativsystem på marknaden än Mac OS X, säger Eric Anderbjörk.
-- Ju fler utvecklare som väljer vårt operativsystem, desto fler licenser säljer vi. Ju fler programvaror, desto bättre!
Problemet med nuvarande MacOS är att det inte är tillräckligt stabilt, men å andra sidan är inte heller Windows NT så stabilt så att det imponerar på någon särskild.
-- Vi behöver ett nytt, modernt operativsystem, säger Eric Anderbjörk.
-- Windows NT är bra, och som tillämpningsserver fungerar NT mycket bättre än gamla MacOS. Men vi vill ha något som är stabilare och snabbare än NT.
Hur ser då ett stabilt operativsystem ut? Jo, det ser ut som Unix. Och MacOS X Server är Unix. Unix med Mac-gränssnitt.
I botten ligger Mach 2.x. (Se bild ovan) Mach är inget operativsystem i sig, det är kärnan att ställa ett operativsystem på. Mach ger grundläggande OS-tjänster som minneshantering och multitrådning. Klientversionen MacOS X som kommer nästa år ska bygga på Mach 3.0.
Redan här, längst ner i arkitekturen, kan vi skönja Steve Jobs fingeravtryck. När Jobs startade Next och skulle bygga Världens Bästa Dator, då lade han också Mach i botten. Han satte en Unix ovanpå, nämligen BSD (Berkeley Standard Unix) 4.3.
BSD finns i olika vidareutvecklingar som Free BSD och Open BSD. Det Apple gjort till MacOS X Server är att plocka det bästa från dessa och täppa till luckorna. Resultatet heter BSD 4.4. BSD ligger sida vid sida med Posix, som är gränssnittet mot Mach.
Blue Box är ett sätt att köra gamla Mac-tillämpningar. Det är inte en emulator, det är snarare en kompatibilitetsenhet.
Yellow Box är en Unix-dialekt. Med Yellow Box i operativsystemet går det lätt att köra Unix-program mot MacOS X Server. Eller rättare sagt: det går lätt att porta Unix-tillämpningar till den här dialekten, och dessutom får jag tillgång till multitasking och multitrådning.
Det här är mycket viktigt för att locka till sig systemutvecklare.
-- Det finns många kraftfulla Unix-tillämpningar som inte fungerar bra på NT, hävdar Eric Anderbjörk. Det gäller allt ifrån program för digitala flöden, till CAD, konstruktion och övervakning.
-- Web Objects fungerar bra på NT, till och med bättre än Microsofts eget Active Server Pages (ASP). Men Web Objects kommer att fungera ännu bättre på MacOS X Server på grund av stabiliteten, minnesskyddet och multitrådningen, samt kopplingen till Objective-C.
Hur får man då Macintoshprogrammerare att anpassa sina program för ett helt nytt operativsystem?
"Nej, det gör vi inte" säger utvecklarna givetvis som svar på denna korkade fråga. "Inte förrän ni fått minst 7-8 procent av marknadsandelarna först".
Och några marknadsandelar får man inte utan tillämpningar. Räddningen kommer egentligen inte förrän nästa år, i MacOS X som innehåller något som kallas för Carbon. Carbon är en ny uppsättning systemanrop, som består av 75 procent av de gamla anropen.
Förmodligen kommer även den därpå följande uppgraderingen av MacOS Server att få Carbon, men den frågan vill inte Eric Anderbjörk svara på idag:
-- Med största sannolikhet kommer den att göra det.
Bakgrunden är denna: Av de 8000 systemanropen i MacOS 8 är det 2000 som inte klarar att hantera tidsdelning och minnesskydd. Genom att ta bort dessa anrop och skriva om Mac Toolbox för Mach får man en miljö som är bakåtkompatibel och har ett modernt operativsystem i botten. Carbon ersätter alltså Mac Toolbox.
I genomsnitt består 10 procent av programkoden i en befintlig tillämpning av de borttagna anropen, och måste därför skrivas om. Helt plötsligt är det inte så mycket jobb vi pratar om. Till hjälp har utvecklaren dessutom Carbon Dater Tool, ett filter som ligger på Apples webbsidor. Du kör din tillämpning genom filtret, som letar efter de anrop som måste skrivas om.
Metrowerks håller på att ta fram ett eget filter för sitt utvecklingsverktyg Code Warrior.
Stora tillämpningar som Photoshop och Office 98 tar mellan två och fyra veckor att skriva om med hjälp av filter.
-- Företag som Macromedia, Microsoft, Adobe och Symantech är mycket intresserade av att skriva om sin sina tillämpningar för Carbon, säger Eric Anderbjörk.
Allt som är skrivet för Yellow Box ska gå att porta till Unix. Allt som är skrivet för Carbon är bakåtkompatibelt från version 8.0 och framåt. Java på MacOS X blir enligt Apple "100 procent pure" och dessutom Microsoft-kompatibelt. Det skulle i så fall betyda att du inte behöver två olika javatolkar.
Yellow Box kommer även finnas för NT, och alla Yellow Box-tillämpningar för MacOS X Server ska gå att köra på Windows NT. Yellow Box kommer i de fallen att fungera som ett anpassningsprogram ("middleware"). Om du startar en tillämpning med Windows-gränssnitt, så måste du ha Yellow Box med NT-gränssnitt.
MacOS X Server kommer att portas till Intel, vilket förmodligen inte kommer att ske med klientversionen MacOS X. Anledningen är enligt Eric Anderbjörk att Intelprocessorsidan tillsammans med HP utvärderar om de ska gå över till RISC-processorer, och därmed väljer Apple att avvakta. Vad gör då en systemutvecklare som vill satsa på MacOS X Server?
-- Du börjar lämpligtvis med att lära dig ett objektorienterat utvecklingsverktyg för Yellow Box, som Objective-C, säger Eric Anderbjörk.
-- Objective-C ingår i MacOS X Server. Det går också bra med Metrowerks Code Warrior, ett verktyg som används mycket bland Mac-utvecklare och som skriver mot Carbon och Yellow Box. p>
Torun Lidfeldt
Copyright Datateknik