Nowe posty

xx Problem ze sterownikami. (5)
2024-04-13, 21:25:16
xx Instalacja xfce4 (2)
2024-04-13, 16:20:17
xx Serie kompilacji bez instalacji dla “emerge” w Gentoo (2)
2024-04-08, 18:40:04
xx Plasma 6 w Neonie ssie trochę mniej ... (17)
2024-04-05, 10:03:46
xx Problem z Linux Lite po instalacji (3)
2024-04-03, 14:23:40
xx Jak właczyć num locka przy starcie systemu debian 12? (12)
2024-04-02, 17:43:54
xx Brak dźwieku w systemie. (5)
2024-04-02, 16:13:41
xx Dystrybucja pod HP Omen (7)
2024-03-29, 11:33:05
xx [Poradnik] Wyszukiwanie Sterowników (2)
2024-03-27, 21:08:23
xx Ile pingwinów? (1)
2024-03-27, 08:59:24

Autor Wątek: Szybki start i stop systemu  (Przeczytany 5495 razy)

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Szybki start i stop systemu
« dnia: 2009-05-16, 15:29:15 »
Witam,

Dostałem zlecenie stworzenia systemu (obojętnie czy to linux czy windows), który będzie działał w miarę przyzwoicie, ale będzie niesamowicie szybko się uruchamiał i zamykał. Szczególnie szybko się zamykał.

Co do szybkiego startu, to nie mam żadnego problemu - w sieci jest pełno poradników, artykułów i innych publikacji mówiących o szybszym starcie systemu.

Udało mi się osiągnąć czas startu (od momentu wybrania opcji w bootloaderze, do pełnej gotowości, czyli uruchomienie środowiska i automatyczne zalogowanie użytkownika) dla linuksa ok. 13 sekund i dla windows ok. 18 sekund. Z tym że ten drugi w zależności od dnia i swojego widzi mi się czasem dokłada kilka sekund.
Myślę, że tu już nie da się więcej wycisnąć, bez dużego nakładu pracy.

Natomiast jeśli chodzi o zamykanie - w sieci naprawdę jest niewiele materiałów na ten temat. Klient sobie zażyczył, aby system zamykał się praktycznie od razu - maksymalnie 2-3 sekundy. Na razie udało mi się osiągnąć zamknięcie linuksa w ciągu 7 sekund, a o windows szkoda pisać.
Czy ktoś ma może doświadczenia w 'tuningowaniu' zamykania systemu?
Już myślałem o jakimś wyłączeniu większości buforów i po prostu odcinaniem zasilania, ale to już chyba ostateczność.

Facet prowadzi poważną firmę i raczej to nie jest jego kaprys, tylko potrzeba...

Niestety, nie chciał powiedzieć do czego mu taki system, gdzie on ma się znajdować, jakie ma mieć zastosowanie. (tajemnica firmy?)

Wiem tylko, że nie będzie miał dostępu do żadnej sieci, i ma mieć pakiet podstawowych aplikacji (Jakiś pakiet biurowy, program graficzny i kompilator). Wygląda to na jakąś stację roboczą.

Nie jest to najnowszy demon szybkości, ale stary też nie jest:
Core 2 Duo 2,66 GHz, 4GB RAM, GeForce 8600, HDD 320 GB, reszta zintegrowana.

Dla zainteresowanych co zrobiłem:
- usunąłem wszelkie niepotrzebne usługi (szczególnie sieciowe)
- przekompilowałem jądro, usuwając wszystkie niepotrzebne sterowniki, wsparcia dla usług, protokoły itp, zmieniłem czasy oczekiwiania i inicjowania urządzeń itp. itd.; w efekcie jądro waży nieco ponad 950 KB
- przekonfigurowałem niektóre usługi, które dość długo się ładowały
- paradoksalnie do karty graficznej zainstalowałem najstarsze jakie znalazłem sterowniki (zajmowały mniej miejsca i udało się skrócić czas ładowania o ok. 1,5 w stosunku do kilku ostatnich wersji, zamykanie bez zmian)
- poza tym usunięcie wielu niepotrzebnych plików i programów.


Jeśli ktoś miałby jakieś nowe pomysły i rady, będę wdzięczny, jeśli zechciałby się podzielić. Szczególnie w kwestii szybkiego zamykania systemu.

  • Gość
Szybki start i stop systemu
« Odpowiedź #1 dnia: 2009-05-16, 16:18:00 »
Cytat: mateo86
Co do szybkiego startu, to nie mam żadnego problemu - w sieci jest pełno poradników, artykułów i innych publikacji mówiących o szybszym starcie systemu.
Nie interesowałem się szybkim zamykaniem systemu, ale jak będziesz znał poszczególne czasy i timingi startowe to możesz wywnioskować gdzie możesz jeszcze zaoszczędzić. Przydatny programik http://www.greatis.com/utilities/bootlogxp/
Cytuj
Dla zainteresowanych co zrobiłem:
- usunąłem wszelkie niepotrzebne usługi (szczególnie sieciowe)
- przekompilowałem jądro, usuwając wszystkie niepotrzebne sterowniki, wsparcia dla usług, protokoły itp, zmieniłem czasy oczekiwiania i inicjowania urządzeń itp. itd.; w efekcie jądro waży nieco ponad 950 KB
- przekonfigurowałem niektóre usługi, które dość długo się ładowały
- paradoksalnie do karty graficznej zainstalowałem najstarsze jakie znalazłem sterowniki (zajmowały mniej miejsca i udało się skrócić czas ładowania o ok. 1,5 w stosunku do kilku ostatnich wersji, zamykanie bez zmian)
- poza tym usunięcie wielu niepotrzebnych plików i programów.
Zrób tak samo w Windowsie ;)
Niezauważyłem info o przekonfigurowanych usługach, ale może programik sie przyda, ewentualnie użyć nLite lub vLite, w sumie też zrobione, skonfigurować co trzeba i zainstalować. Zawsze można użyć przycisku Power ;)

Offline roobal

  • Users
  • Guru
  • *****
  • Wiadomości: 2056
    • Zobacz profil
Szybki start i stop systemu
« Odpowiedź #2 dnia: 2009-05-16, 22:00:21 »
Może się mylę. Ale z tego co zauważyłem w Windowsach czas zamykania jest różny na różnych kompach. Kiedyś na moim starym kompie (Sempron 1,5GHz, 256MB RAM) win98 wyłączał się dosłownie w 2 sekundy (czas uruchamiania ok. 40 sek.), natomiast na tym samym kompie winxp wyłączał się, żeby nie skłamać ok. 4 sekund (czas uruchamiania ok. 120 sek.). Natomiast u wielu moich znajomych i na moim obecnym laptopie (Celeron 1,86GHz, 512MB RAM) jest odwrotnie (czas starty winxp ok 40 sek.), zamykanie trwa ok. 10 - 20 sekund. Natomiast z dystrybucjami różnie też bywa, Debian wyłącza mi się ok. 10 sekund, Arch tak samo a np. Gentoo wyłączało mi się ok 20 sekund ale to pewnie już zależy od usług itd.

Pozdrawiam!

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Szybki start i stop systemu
« Odpowiedź #3 dnia: 2009-05-17, 16:10:44 »
Cytat: chameleon
Zrób tak samo w Windowsie ;)
Niezauważyłem info o przekonfigurowanych usługach, ale może programik sie przyda, ewentualnie użyć nLite lub vLite, w sumie też zrobione, skonfigurować co trzeba i zainstalować. Zawsze można użyć przycisku Power ;)
Myślisz że nie robiłem? Windows nie jest tak elastyczny jak linux i wypróbowałem chyba wszystkie porady na pierwszych 7 stronach googli (później już się powtarzają).

windows raczej nie biorę pod uwagę, bo o ile czasem uruchomienie można mniej więcej manipulować, to już zamknięcie jest loterią.

Usunąłem jeszcze kilka usług w linuksie, chociaż za bardzo nie wiem za co one odpowiadały, ale system jak na razie działa. Czas startu 11 s, zamykania 5 s.

arctgx

  • Gość
Szybki start i stop systemu
« Odpowiedź #4 dnia: 2009-05-17, 19:14:47 »
Cytat: mateo86
Czas startu 11 s, zamykania 5 s.
Wkleiłbyś gdzieś wykres bootcharta z i bez opcji -n, dla tego startu? Może zamiast podpowiedzieć, sam z jakiegoś doświadczonka bym skorzystał. Bawiłem się pół roku temu na fali popularności tego tematu. Sporo udało mi się zredukować, ale i tak procesor trawi sporo czasu, czekając na operacje dyskowe, które przebiegają sporo poniżej możliwości dysku.

ZipoKing

  • Gość
Szybki start i stop systemu
« Odpowiedź #5 dnia: 2009-05-18, 11:00:35 »
A nie brałeś pod uwagę usypiania (suspend to disk) systemu zamiast standardowego wyłączania? Czas "uruchomienia" i "zamknięcia" systemu będzie w takim przypadku tylko i wyłącznie przepustowością dysku.

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Szybki start i stop systemu
« Odpowiedź #6 dnia: 2009-05-18, 21:02:07 »
Dziwna sprawa... Chyba za dużo powyłączałem, bo bootchart nie chce tworzyć wykresu :/ Nawet w logach nic nie ma...
Ale ważne że wszystko inne działa. Po kolejnym dniu zmagań czasy są bez zmian.

@zipoking. Klient zastrzegł, żeby to nie były ani wstrzymanie, ani hibernacja, ani jakikolwiek inny z tych wynalazków. Musi być to pełne uruchomienie, dlaczego nie wiem.

Spróbuję w jakiś sposób zmusić usługi i aplikacje, aby nie miały żadnych buforów i wszystko co w miarę istotne maksymalnie często zapisywały na dysku twardym. No i do tego jeszcze przydałoby się dorzucić parkowanie głowicy i myślę, że można by wyłączać go po prostu przyciskiem (odciąć mu zasilanie).
Założę się, że przy takiej eksploatacji dysk padnie zanim skończy się gwarancja... ;P

arctgx

  • Gość
Szybki start i stop systemu
« Odpowiedź #7 dnia: 2009-05-19, 01:10:04 »
Cytat: mateo86
bootchart nie chce tworzyć wykresu :/
...to znaczy, nie ma pliku bootchartd.tgz w /var/log/ lub zadanym przez Ciebie miejscu?

Na razie nie bawiłem się w usypianie do dysku, póki zostaje mi coś z danych niezarchiwizowanego. Najprędzej zrobię to w systemie na osobnym dysku, by do stracenia nie było zbyt wiele.

magnusek

  • Gość
Szybki start i stop systemu
« Odpowiedź #8 dnia: 2009-05-19, 02:45:36 »
ja bym zastosowal najszybsza metode z mozliwych:

echo b > /proc/sysrq-trigger
or

echo o > /proc/sysrq-trigger
+ solidne, szybkie dyski, raid i dobry backup i bedzie tak jakby chcial

arctgx

  • Gość
Szybki start i stop systemu
« Odpowiedź #9 dnia: 2009-05-19, 17:25:43 »
Nie wiem dokładnie, czym w praktyce różnią się "o", "b" i odłączenie zasilania ;) Skoro o Magic SysRQ, to są jeszcze choćby "s" i "u" (Documentation/sysrq.txt).
Cytat: mateo86
Spróbuję w jakiś sposób zmusić usługi i aplikacje, aby nie miały żadnych buforów i wszystko co w miarę istotne maksymalnie często zapisywały na dysku twardym.
Rozumiem, że montowanie z opcją sync odpada, skoro piszesz o skonfigurowaniu aplikacji, a nie obsługi systemu plików. Nie wiem jak na twardych dyskach, ale na pendrajwach opcja ta spowalniała mi zapis około 9 razy (http://forum.linux.pl/viewtopic.php?id=6532).

  • Gość
Szybki start i stop systemu
« Odpowiedź #10 dnia: 2009-05-24, 19:31:19 »
I co jak idzie? Walczysz dalej?

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Szybki start i stop systemu
« Odpowiedź #11 dnia: 2009-05-25, 11:42:21 »
Przez jakiś czas testowałem rozwiązania magnuska.

Wykorzystałem:
echo o > /proc/sysrq-trigger
i jeszcze gdzie się dało i nie powodowało zbyt drastycznego spadku wydajności powyłączałem bufory i ustawiłem maksymalnie częste zapisy na dysku.

Z opcją sync nic nie próbowałem, szczególnie że tak jak arctgx napisał zwalnia zapis (na dyskach też, ale nie aż 9x)

Jak znajdę wolną chwilę, to opiszę na stronie wszystko co i jak robiłem.

Ogólnie to końcowy efekt prezentuje się następująco: start 9-10s, stop - natychmiast.
(podkręcenie delikatnie procesora, zmienienie timingów i taktowania pamięci pozwoliło wyciągnąć jeszcze ok 1,5 sekundy.)

Po kilkudziesięciu uruchomieniach i zatrzymaniach, dodatkowo przy raz otwartych, a raz zamkniętych aplikacjach nie było żadnych błędów, nawet niezapisane pliki udało się w większości bezproblemowo przywrócić po uruchomieniu systemu.


Edit: literówki