IntuitionBase Banner

Att använda uppstartskonfigurationerna

Kickstartfiler på disk.

På Classic-Amigan fanns ett ROM som innehöll standardbiblioteken Exec, Dos, Intuition, osv. Detta ROM gjorde det möjligt att starta upp från en diskett där inget system fanns installerat - att starta utan startsekvensen (Startup-Sequence), och på så sätt få ett DOS-skal att utföra reparationsåtgärder ifrån.

Uboot, AmigaOnes ROM, initierar hårdvaran och startar ett operativsystem men innehåller inte tillräckligt med bibliotek för att starta AmigaOS - man kan inte starta utan Startup-Sequence som på de klassiska maskinerna. Dock finns dessa baskomponenter (ExecSG, FFS2, osv.) lagrade på disk, precis som vanliga filer, i SYS:Kickstart-katalogen. Fördelen med detta system är att det nu är möjligt att uppdatera OS:et enbart genom att uppdatera dessa moduler. Nackdelen är att det också är lätt att förstöra uppstartspartitionen (boot-partitionen) så den ej kan startas pga. fel biblioteksversioner, saknade moduler, etc.

Konfigurering av kickstart-modulerna



Försökte du uppdatera OS4 och gjorde ett felaktigt val? Startar inte ditt system upp? Inga problem!
Som en god Amigan har du säkra konfigurationer. Ja, det är möjligt att definiera så många modulkonfigurationer som behövs.

För att förtså hur det fungerar är det nödvändigt att titta på Kicklayout-filen i SYS:Kickstart/; en fil som enkelt kan redigeras med valfri texteditor och innehåller konfigurationerna som SLB (Second Level Booter, andranivåsuppstartaren) ska ladda. Upplägget är enkelt: en rad som börjar med "LABEL" anger namnet på den konfiguration som följer, rader som börjar med "MODULE" anger vilka moduler som skall startas i just denna konfiguration. Det finns också en "EXEC Kickstart/loader"-rad som du troligtvis aldrig behöver ändra - detta är programmet som reallokerar modulerna i minnet innan de exekveras.

Exempel:
          LABEL Default
          EXEC Kickstart/loader

          MODULE Kickstart/kernel
          MODULE Kickstart/a1ide.device.kmod
          ....osv.

För att skapa flera konfigurationer behöver bara Kicklayout-filen ändras. Exempelvis kan du skapa en standardkonfiguration som alltid startas, en annan för att testa en modul du just utvecklat (om du är en programmerare), osv.

Du kan välja vilken konfiguration att starta genom att i uppstartssmenyn (Boot selector menu) i Uboot ändra "Configuration"-fältet. Naturligtvis kommer den konfiguration som kallas "Default" att startas om du inte anger annat.

Hur skapar jag egna konfigurationer?

Det räcker med att skapa fler konfigurationer i din Kicklayout-filen som listar de moduler som skall startas i respektive konfiguration. Låt oss som exempel anta att du laddar ner en uppdatering av OS4-kärnan som du vill installera. För att vara på den säkra sidan vill du behålla den "Default"-konfiguration du alltid använder. För att åstadkomma detta kopierar du alla rader som tillhör "Default"-konfigurationen och klistrar in dem längre ner i din Kicklayout-fil, ger de raderna ett nytt namn ("LABEL") och anger den nya kärnans filnamn.

          LABEL Default
          EXEC Kickstart/loader
          MODULE Kickstart/kernel
          ....osv.

          LABEL update
          EXEC Kickstart/loader
          MODULE Kickstart/updated-kernel
          ....osv.

Du kan sedan starta din AEtta genom att gå in i Uboot:en och ange att du vill starta den "uppdaterade" konfigurationen.

Enkel administration av konfigurationer.

Om du skapar flera konfigurationer kommer du märka att flera versioner av vissa moduler kan överbelamra din Kickstart-låda.

          kernel
          kernelv2
          kernel-51.0
          kernel-01-01-2004
          ....osv.

Detta försvårar att läsa lådinnehållet och det är lätt hänt att göra fel, så jag råder dig att skapa en låda per konfiguration. Detta gör det enklare att skapa nya konfigurationer och jämföra två för att fastsälla vilka moduler som är nyast.

Min Kickstart-låda ser ut så här:

          Kickstart (låda)
              ConfigOK (låda)
                  module1.kmod
                  module2.kmod
              ...
              Default (låda)
                  module1.kmod
                  module2.kmod
              ...
              Debug (låda)
                  module1.kmod
              ...

Slutsats

Det här systemet tillåter enkel korrigering av en felaktig konfiguration. Naturligtvis kommer inte SLB:n kunna läsa in kickstart-modulerna om du har allvarligare hårddisk-fel. I dett fall kan man inte nå "Early startup"-menyn för att starta utan Startup-Sequence. För att lösa sådana problem måste du starta med OS4-CDROM:en för att fixa problemet. Förhoppningsvis kommer vi en dag, med en större marknad, kunna ha en riktigt ROM igen...

Skriven av:
Philippe 'Elwood' Ferrucci

Översättning av:
Joakim 'jaokim' Nordström, Svenska ATO
©2004-2011 IntuitionBase