Opracowanie przeglądarki internetowej, takiej jak Firefox, nie jest tak proste, jak się wydaje. Wymaga to zespołu znakomitych programistów do wspólnej pracy nad stworzeniem wydajnej i szybkiej przeglądarki internetowej, z której możemy korzystać bezpłatnie. W przeglądarce Firefox jednym z głównych ulepszeń wydajności jest ograniczenie liczby nagich plików. Od wersji Firefoksa 4 wiele plików, zwłaszcza skrypty javascript, które kiedyś znajdowały się w folderze składników, są pakowane w jeden plik o nazwie omni.jar, co skutecznie redukuje operacje wejścia / wyjścia na dysku 30-100x. Nazwa Omni.jar została zmieniona na omni.ja od wersji 10, aby zapobiec uszkodzeniu Firefoksa.
To ulepszenie spowodowało pewne problemy dla niektórych użytkowników, którzy wolą modyfikować podstawowe pliki JavaScript w celu dostosowania zamiast używania dodatków lub rozszerzeń. Jeśli używają starszej wersji 7-Zip, takiej jak 9.20, do otwarcia pliku omni.ja, 7-Zip zgłosi błąd z informacją „ Nie można otworzyć pliku omni.ja jako archiwum ”, chociaż zgłoszono, że omni Plik .ja jest w rzeczywistości plikiem ZIP.
Prostym obejściem jest zmiana nazwy rozszerzenia pliku omni.ja na .zip, a system Windows będzie mógł otwierać i rozpakowywać pliki. Następnie mogą modyfikować pliki zgodnie ze swoimi potrzebami, ponownie je spakować do pliku ZIP, a na końcu zmienić nazwę rozszerzenia pliku na .ja. Chociaż ta metoda działa, nie jest to zalecane, ponieważ przeprowadzana jest dodatkowa optymalizacja oryginalnego pliku omni.ja, co może spowodować dodatkowe 2-3-krotne zmniejszenie liczby operacji we / wy dysku. Zoptymalizowany plik omni.ja nie jest standardowym formatem ZIP, ponieważ układ został zmieniony. Zwykle indeks jest umieszczany na końcu pliku, ale zoptymalizowany omni.ja umieszcza go na początku pliku, aby zminimalizować liczbę poszukiwań dysku i zmaksymalizować korzyści z odczytu. To jest powód, dla którego niektóre wybredne programy do archiwizacji, takie jak starsza wersja 7-Zip 9.20, nie mogą otworzyć pliku omni.ja, nawet jeśli jest to plik ZIP. Uruchomienie funkcji „archiwum testowego” w 7-Zip pokaże, że wykrył błąd w nagłówkach.
Na szczęście autor 7-Zip dodał obsługę otwierania zoptymalizowanego pliku omni.ja w najnowszej wersji. Chociaż nie ma problemów z otwarciem omni.ja z najnowszą wersją 7-Zip, nie jest możliwe automatyczne aktualizowanie edytowanych plików. Jak widać na poniższym zrzucie ekranu, próbowaliśmy edytować plik z omni.ja, a 7-Zip zgłasza błąd informujący, że jest on tylko do odczytu, gdy próbuje zaktualizować edytowany plik w archiwum.
Teraz pokażemy Ci, jak dezoptymalizować zoptymalizowany plik omni.ja, abyś mógł wygodnie edytować dowolne pliki bezpośrednio z 7-Zip, a następnie ponownie zoptymalizować, aby nie stracić dodatkowej 2-3-krotnej redukcji We / Wy dysku.
1. Pobierz ActivePython i zainstaluj. Jeśli używasz 64-bitowej wersji systemu Windows, pobierz wersję ActivePython x64.
2. Pobierz zaktualizowany skrypt python Optimizejars.py, który został poprawiony do pracy z omni.ja
3. Dla uproszczenia umieść na komputerze zarówno plik omni.jar, jak i plik optimizejars.py. Uruchom wiersz polecenia, naciskając przycisk Start, wpisz cmd i naciśnij klawisz Enter. Zmień katalog na pulpit, wpisując „cd desktop”, naciśnij Enter i wpisz poniższe polecenie, aby dezoptymalizować plik omni.ja.
optimizejars.py --deoptimize ./ ./ ./
Alternatywnie możesz również skopiować plik optimizejars.py do katalogu, w którym znajduje się plik omni.ja, który zwykle znajduje się w C: \ Program Files \ Mozilla Firefox \, a następnie uruchom wiersz polecenia jako administrator, zmień katalog na ścieżkę, w której omni. ja znajduje się i uruchom powyższą komendę deoptimize. Jeśli po uruchomieniu polecenia deoptimize otrzymasz odmowę dostępu IOError 13, oznacza to, że wiersz polecenia nie jest uruchamiany jako administrator.
Po udanej dezoptymalizacji plik omni.ja staje się standardowym plikiem ZIP, który można otworzyć w dowolnym programie do archiwizacji. Po wprowadzeniu zmian w plikach w pliku omni.ja należy ponownie zoptymalizować plik, aby zwiększyć wydajność, wpisując nieco inne polecenie przedstawione poniżej.
optimizejars.py --optimize ./ ./ ./
Poniżej znajduje się dowód optymalizacji i deoptymalizacji pliku omni.ja. Poniższy obraz przedstawia oryginalny zoptymalizowany plik omni.ja otwarty za pomocą Notatnika, standardowego edytora tekstu wbudowanego w system operacyjny Windows. Początek nagłówka pliku pokazuje PK, który jest standardowym podpisem pliku ZIP. Znajdziesz wiele ścieżek do plików, które są indeksami plików w archiwum na początku pliku omni.ja.
Przyjrzyjmy się teraz dezoptymalizowanemu plikowi omni.ja w Notatniku. Przewinęliśmy do samego końca pliku i, jak widać, indeksy plików są umieszczane tutaj, a nie na początku. Jeśli spojrzysz na początek pliku, powinieneś również zobaczyć, że zaczyna się on od PK.
Należy pamiętać, że za każdym razem, gdy Firefox jest aktualizowany, istnieje duże prawdopodobieństwo, że plik omni.ja zostanie zaktualizowany, a także zastąpi zmodyfikowany plik omni.ja. Jest to jeden z głównych powodów, dla których należy używać rozszerzeń zamiast modyfikować podstawowe pliki Firefoksa, ponieważ zachowuje on modyfikację, umożliwiając jednocześnie łatwe aktualizowanie wersji Firefoksa.