Hallo Zusammen
Ich bitte um Verschiebung wenn das hier der falsche Thread ist.
Wie kann ich den Hardwarescan beim booten ausschalten?
An meinem System wird sich in der nächsten Zeit nichts mehr ändern und ich möchte den Bootvorgang so weit wie möglich beschleunigen.
Danke für Eure Ideen
Michi
Hardware scan on boot ausschalten
-
- Beiträge: 20
- Registriert: 03.12.2007 15:31:57
-
- Beiträge: 1581
- Registriert: 01.05.2004 13:21:26
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: DE
Re: Hardware scan on boot ausschalten
Du meinst die falsche Kategorie! Ist sie aber nicht - sagen wir mal, das Thema berührt einige Kategorien.Maverick83 hat geschrieben: Ich bitte um Verschiebung wenn das hier der falsche Thread ist.
Was meinst du denn mit Scan? Grob gesagt, gibt es zwei größere Teilbereiche beim booten: vor init - nach init.Wie kann ich den Hardwarescan beim booten ausschalten?
An meinem System wird sich in der nächsten Zeit nichts mehr ändern und ich möchte den Bootvorgang so weit wie möglich beschleunigen.
Vor dem laden von init wird der Kernel geladen, die Hardware erfasst und eingebunden (So weit wie möglich). Da gibt es nicht viel Spielraum zum Beschleunigen. Wenn du einem distri-Kernel fährst, wäre der erste Schritt das Erstellen eines eigenen Kernels. (Es wurde auch schon von den kernel-devs diskutiert, ob und wie man vielleicht mal parallel Subsysteme laden kann, aber das dauert wohl noch etwas).
Nach dem Starten von init kommt dann der Teil, der mehr Potential zur Optimierung hat. Einerseits durch Parallelisierung des Startens von DIensten (zB upstart) oder das Entfernen von DIensten, die du eh nicht benötigst. Auch kannst du dir mal alternative init-System (runit, initng, ...) anschauen, da gab es hier auch schon ein paar Threads zu.
ciao, storm
drivers/ata/libata-core.c: /* devices which puke on READ_NATIVE_MAX */
-
- Beiträge: 20
- Registriert: 03.12.2007 15:31:57
Hallo storm
Muss man das beim erstellen des Kernels einstellen oder kann man das auch nachträglich machen?
Die Scripte habe ich bereits ausgemistet.
Genau das (die Hardware erfasst) habe ich gemeint. Das System muss ja nicht jedesmal die gnaze Hardware erfassen, es ändert sich ja nie etwas daran.Vor dem laden von init wird der Kernel geladen, die Hardware erfasst und eingebunden
Muss man das beim erstellen des Kernels einstellen oder kann man das auch nachträglich machen?
Die Scripte habe ich bereits ausgemistet.
-
- Beiträge: 1581
- Registriert: 01.05.2004 13:21:26
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: DE
Ich geh mal davon aus, du meinst die bei dir vorhandene Hardware, richtig? Das ist leider nicht ganz so einfach. Nur weil du als User nichts dran änderst, heißt das ja nicht, dass sich nicht doch etwas ändern kann. Der kernel kann auch nicht einfach annehmen, dass sich ein Gerät/eine Schnittstelle noch da befindet, wo sie beim letzten Mal war. Und du willst ja sicher auch funktionierende Hardware, also sollte schon geprüft werden, ob ein Gerät richtig initialisiert wurde.Maverick83 hat geschrieben:Genau das (die Hardware erfasst) habe ich gemeint. Das System muss ja nicht jedesmal die gnaze Hardware erfassen, es ändert sich ja nie etwas daran.
Außerdem beansprucht das eigentliche Scannen/Erkennen von Geräten nicht wirklich so viel Zeit (zB im Vergleich mit dem Laden von Treibern etc.). Und vor allem: was sind ein paar Sekunden weniger, wenn der Rechner ein paar Stunden oder noch mehr läuft?
Was du möchtest, läuft eher auf suspend to ram raus. Vielleicht bringt auch eine solid state disk oder hybrid-Platte an der Stelle etwas, aber die kosten atm noch ganz ordentlich.
Nachträglich [eher] nicht. Das ist beim Kernel-Konfigurieren zu machen. Deswegen oben auch der Hinweis, dass der erste Schritt das Erstellen eines eigenen Kernels wäre.Muss man das beim erstellen des Kernels einstellen oder kann man das auch nachträglich machen?
ciao, storm
drivers/ata/libata-core.c: /* devices which puke on READ_NATIVE_MAX */
-
- Beiträge: 20
- Registriert: 03.12.2007 15:31:57
hi,
die einzelnen Bytes eines Treibers müssen natürlich so oder so
geladen werden. Fest eingebaute werden aber alle mit einem
einzigen Plattenzugriff zusammen mit dem Kernel geladen, das
kostet maximal ein paar Tausendstel Sekunden mehr.
Ein Modul per /etc/modules zu laden ist etwas aufwendiger:
- / öffnen, etc suchen
- etc/ öffnen, modules suchen
- modules lesen
- / öffnen, lib suchen
- usw., jedes Unterverzeichnis bis zum modul.ko
- modul laden
und jedes Verzeichnis und jede Datei kostet einen Plattenzugriff.
Module verlängern das Booten also messbar - ob man den
Unterschied allerdings merkt...
Wenn du einen eigenen Kernel baust, schalt mal die Option
PRINTK_TIME ein (Kernel hacking -> Show timing information on
printks). Dann siehst du genau, was Kernel-seitig Zeit kostet.
Eine ganz andere Bremse ist der Framebuffer. Damit muss der
Text der Boot-Meldungen Pixel für Pixel per Software erzeugt und
gescrollt werden, meistens auch noch viel mehr als 25 Zeilen.
Ohne Framebuffer macht das die VGA-Hardware. Alternativ kann
man mit dem Boot-Parameter 'quiet' die Meldungen abschalten.
die einzelnen Bytes eines Treibers müssen natürlich so oder so
geladen werden. Fest eingebaute werden aber alle mit einem
einzigen Plattenzugriff zusammen mit dem Kernel geladen, das
kostet maximal ein paar Tausendstel Sekunden mehr.
Ein Modul per /etc/modules zu laden ist etwas aufwendiger:
- / öffnen, etc suchen
- etc/ öffnen, modules suchen
- modules lesen
- / öffnen, lib suchen
- usw., jedes Unterverzeichnis bis zum modul.ko
- modul laden
und jedes Verzeichnis und jede Datei kostet einen Plattenzugriff.
Module verlängern das Booten also messbar - ob man den
Unterschied allerdings merkt...
Wenn du einen eigenen Kernel baust, schalt mal die Option
PRINTK_TIME ein (Kernel hacking -> Show timing information on
printks). Dann siehst du genau, was Kernel-seitig Zeit kostet.
Eine ganz andere Bremse ist der Framebuffer. Damit muss der
Text der Boot-Meldungen Pixel für Pixel per Software erzeugt und
gescrollt werden, meistens auch noch viel mehr als 25 Zeilen.
Ohne Framebuffer macht das die VGA-Hardware. Alternativ kann
man mit dem Boot-Parameter 'quiet' die Meldungen abschalten.
Beware of programmers who carry screwdrivers.