Il tempo di avvio è super veloce, come mai?


20

Il tempo di avvio in Ubuntu è molto veloce. 7-10 secondi. Confrontandolo con il mio mac (che è di circa 30-40 secondi). Come mai Ubuntu è molto più veloce? Sto pensando che utilizza un kernel diverso (Linux). Non sono sicuro che ciò possa prendere in considerazione qualcosa ...


6
Il tempo di avvio di un sistema dipende da molti fattori, come la configurazione hardware, gli script e i programmi di avvio, DE ecc. Ecc. Benvenuti nel mondo di Linux.
stagnato il

1
È strano che il tuo Mac non si avvii allo stesso modo velocemente, poiché Apple utilizza launchd ( en.wikipedia.org/wiki/Launchd ), che sembra essere simile a Upstart.
Ripristina Monica il

Risposte:


29

Si avvia velocemente perché le persone hanno lavorato molto duramente per raggiungere questo obiettivo negli ultimi due anni da Ubuntu 8.10. Alcuni dei principali fattori (oltre Ubuntu precedente alla 10.04):

  • Spostare il processo di avvio su un modello di eventi (Upstart) in modo che le cose si caricino in parallelo e quando sono necessarie. È un sistema geniale.

  • X (il desktop grafico per la maggior parte delle persone) è ora caricato molto presto. Preparandolo più velocemente, puoi mostrare all'utente qualcosa di molto più veloce.

  • Rimuovere deadwood da initramfs(l'immagine che viene caricata da grub per avviare il sistema)

  • Vari meccanismi di memorizzazione nella cache sono venuti e passati tra cui sreadaheade ureadahead. Questi funzionano generando un blocco binario di file che il tuo sistema utilizza all'avvio in modo che possa essere letto dal disco rigido in una volta sola.

Confrontando 8.10 e 10.10, probabilmente ora vedrai solo un sesto dei tempi di avvio. È un miglioramento molto impressionante ... Ma questo non spiega perché sia ​​più veloce di altri sistemi.

Per questo penso di poter solo dire che sono più pesanti e non sono altrettanto bravi ad avviare il servizio in parallelo.


Hai spiegato perché. Un altro sistema non ha speso tante risorse per ottimizzare i tempi di avvio come ha fatto Linux.
Javier Rivera,

5
In tutta sincerità con loro, sono sicuro che Microsoft e Apple hanno speso enormi quantità di denaro nel tentativo di migliorare i loro processi di avvio ... Microsoft ha sicuramente creato una canzone enorme e ci ha ballato prima che Windows 7 venisse lanciato. Non sono altrettanto bravi;)
Oli

2
Non sono sicuro che tu abbia voluto che suonasse in quel modo o meno, ma "generare un blocco binario di file che il tuo sistema utilizza per l'avvio" fa sembrare che ureadahead copi i dati utilizzati durante l'avvio in una cache centrale da cui vengono invece letti . Questo non è il caso. Genera un elenco di tali file e li legge dalle loro posizioni originali all'avvio in un ordine ottimizzato prima che siano necessari.
psusi,

@psusi Stavo pensando a sreadaheadcosa genera un file "pack" binario. In realtà, sei sicuro? Ho letto più a fondo ureadaheade sembra anche ruotare intorno al concetto di "pacchetto" (che ha senso se si desidera contrastare i tempi di ricerca lenti su dischi meccanici) ...
Oli

2
Il file pack è un elenco di quali blocchi da quali file devono essere letti; non contiene i dati effettivi. Ho sperimentato la deframmentazione del disco e l'imballaggio stretto di questi file all'inizio del disco, ottenendo miglioramenti da questo grazie al minor tempo di ricerca. Semplicemente leggere i file in ordine aiuta molto nelle ricerche, poiché la testa deve solo cercare in avanti e mai indietro.
psusi,

7

ureadahead è una ragione.

Che le persone che stanno scrivendo il sistema siano quelle che lo usano e odiano gli stivali lenti è un altro.

Che gli utenti desktop generalmente si aspettano stivali lunghi, quindi la compagnia X afferma che "l'avvio più veloce in città" è un terzo.

Lasciare solo i bit veramente necessari nel sistema operativo è una tradizione Unix consolidata nel tempo è un quarto.

Potrebbero esserci altri motivi.


C'è poca pressione sul mercato per tempi di avvio rapidi perché molte persone ora mettono il computer in modalità di sospensione invece del completo spegnimento.
Lie Ryan,

0

Questo è il caricamento anticipato della tecnologia readahead + init indipendente di dispositivi hardware + non tanti servizi di sistema da caricare + molti di loro caricano dopo aver presentato un'interfaccia utente all'utente.


-2

Il tempo di avvio di Ubuntu non è di 7 secondi AFAIK. Il più veloce che puoi ottenere è il tempo di avvio di 15-30 secondi (tempo di accesso non incluso). L'avvio più veloce di un sistema operativo desktop completo ho sentito parlare di chromeOS che è di 3 secondi (anche quando viene fornito con il loro hardware). Ci vuole tempo per caricare driver, script, ecc. In ogni caso il tempo di avvio in Ubuntu (e altre distribuzioni Linux) è più veloce di altri perché usano tecniche moderne già discusse sopra. http://www.tuxradar.com/content/benchmarked-ubuntu-vs-vista-vs-windows-7


5
Il "benchmark di avvio standard" va dal dopo aver passato le mani al BIOS a sedersi su un desktop utilizzabile (usando il login automatico). Posso ottenere circa 10 secondi sul desktop, 13 secondi fino a quando il Wifi si collega . Abbastanza sicuro che anche questo potrebbe essere ridotto. Se questo fosse con un sistema più veloce con un SSD più veloce, 7 secondi sarebbe facile.
Oli

Sì sicuramente puoi ottenere meno di 10 secondi (come ho detto ChromeOS basato su Ubuntu si accende in 3 secondi), Ma devi strappare molte cose. Con il sistema operativo a pieno carico con molte applicazioni e altri driver installati, ci vorrebbe tempo per l'avvio. Con SSD Ubuntu può avviarsi anche in 5 secondi, ma che dire dell'HDD? la maggior parte delle persone lo possiede.
puneet

2
Un sacco di persone con SSD ottengono tempi di avvio inferiori a 10 secondi senza alcun hacker importante. Di solito ne ottengo circa 8 con il mio. Il mio record sui dischi rigidi rotazionali è di 12 secondi, anche se con qualche modifica. 15-18 è più tipico.
psusi,

dopo aver selezionato Ubuntu da GRUB ci vogliono solo 7 secondi con il mio Baracuda Segate non così veloce da 160 GB con configurazione a doppio avvio con Windows 7
kaykay,

1
@puneet solo perché il tuo computer non si avvia così velocemente, non significa che altri computer non possano farlo. Il tempo di avvio varierà in base all'hardware che hai, SSD vs HDD è il fattore più importante. Non c'è niente di sbagliato nel tuo computer, ma non è così veloce all'avvio come alcuni. (Mi ci vogliono 30-40 secondi)
dv3500ea
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.