Firefox OMNI.JA 파일을 최적화하거나 최적화 해제하는 방법

2016-09-01 00:04:48
메인·소프트웨어·Firefox OMNI.JA 파일을 최적화하거나 최적화 해제하는 방법

Firefox와 같은 웹 브라우저를 개발하는 것은 쉬운 일이 아닙니다. 우리가 사용할 수있는 효율적이고 빠른 웹 브라우저를 만들어내는 훌륭한 프로그래머 팀이 필요합니다. Firefox 웹 브라우저의 경우 성능의 주요 개선 사항 중 하나는 알몸 파일이 적다는 것입니다. Firefox 버전 4 이후로 많은 파일, 특히 구성 요소 폴더에 있던 Javascript는 omni.jar라는 하나의 파일로 압축되어 30-100 배의 디스크 I / O를 효과적으로 줄입니다. Firefox가 손상되지 않도록 버전 10 이후 Omni.jar의 이름이 omni.ja로 변경되었습니다.

이 개선으로 인해 애드온 또는 확장 기능을 사용하는 대신 사용자 정의를 위해 핵심 Javascript 파일을 수정하려는 일부 사용자에게 일부 문제가 발생했습니다. omni.ja 파일을 열기 위해 9.20과 같은 이전 버전의 7-Zip을 사용하는 경우 7-Zip은 " omni.ja 파일을 아카이브로 열 수 없습니다 "라는 오류를보고합니다. .ja 파일은 실제로 ZIP 파일입니다.

간단한 해결 방법은 omni.ja 파일 확장자의 이름을 .zip으로 바꾸는 것입니다. 그러면 Windows에서 파일을 열고 추출 할 수 있습니다. 그런 다음 필요에 따라 파일을 수정하고 ZIP 파일로 다시 압축 한 다음 파일 확장명을 .ja로 다시 바꿀 수 있습니다. 이 방법은 효과가 있지만 원본 omni.ja 파일에서 추가 최적화를 수행하여 디스크 I / O를 2 ~ 3 배 더 줄일 수 있으므로 권장하지 않습니다. 레이아웃이 변경되었으므로 최적화 된 omni.ja 파일은 표준 ZIP 형식이 아닙니다. 일반적으로 색인은 파일의 끝에 배치되지만 최적화 된 omni.ja는 디스크 탐색을 최소화하고 미리 읽기 이점을 최대화하기 위해 파일 앞에 색인을 배치합니다. 이것이 이전 버전의 7-Zip 9.20과 같은 까다로운 아카이버 프로그램이 ZIP 파일이더라도 omni.ja를 열 수없는 이유입니다. 7-Zip에서 "아카이브 테스트"기능을 실행하면 헤더에서 오류가 감지되었음을 알 수 있습니다.

다행히 7-Zip의 작가는 최적화 된 omni.ja 파일을 최신 버전으로 여는 지원을 추가했습니다. 최신 7-Zip으로 omni.ja를 여는 데 문제가 없지만 편집 한 파일을 자동으로 업데이트 할 수는 없습니다. 아래 스크린 샷에서 볼 수 있듯이 omni.ja에서 파일을 편집하려고 시도했으며 7-Zip은 아카이브에서 편집 된 파일을 업데이트하려고 할 때 읽기 전용이라는 오류를 발생시킵니다.

이제 최적화 된 omni.ja 파일의 최적화를 해제하여 7-Zip에서 직접 파일을 편리하게 편집 한 다음 다시 최적화하여 디스크 I / O의 추가 2-3 배 감소를 잃지 않도록하는 방법을 보여줍니다.

1. ActivePython을 다운로드 하여 설치하십시오. 64 비트 버전의 Windows를 실행중인 경우 x64 버전의 ActivePython을 다운로드하십시오.

2. omni.ja와 작동하도록 수정 된 업데이트 된 optimizejars.py python 스크립트를 다운로드하십시오.

3. 간단하게하기 위해 omni.jar 파일과 optimizejars.py 파일을 데스크탑에 두십시오. 시작 단추를 눌러 명령 프롬프트를 실행하고 cmd 를 입력 후 Enter 키를 누르십시오. “cd desktop”을 입력하여 디렉토리를 데스크탑으로 변경하고 Enter를 누른 다음 아래 명령을 입력하여 omni.ja 파일을 최적화 해제하십시오.

optimizejars.py --deoptimize ./ ./ ./

또는 일반적으로 C : \ Program Files \ Mozilla Firefox \에있는 omni.ja가있는 디렉토리에 optimizejars.py 파일을 복사 한 다음 관리자 권한으로 명령 프롬프트를 실행하고 디렉토리를 omni 경로로 변경하십시오. ja가 있고 위에 표시된 deoptimize 명령을 실행합니다. deoptimize 명령을 실행 한 후 IOError 13이 거부 된 권한이 있으면 명령 프롬프트가 관리자 권한으로 실행되지 않는 것입니다.

성공적인 최적화 해제 후, omni.ja 파일은 표준 ZIP 파일이되어 모든 아카이버 프로그램에서 열 수 있습니다. omni.ja 내의 파일을 변경 한 후 아래 표시된 약간 다른 명령을 입력하여 추가 성능 이점을 위해 파일을 다시 최적화해야합니다.

optimizejars.py --optimize ./ ./ ./

다음은 omni.ja 파일의 최적화 및 역 최적화 증거입니다. 아래 이미지는 Windows 운영 체제에 기본 제공되는 표준 텍스트 편집기 인 메모장에서 열린 원래 최적화 된 omni.ja 파일을 보여줍니다. 파일 헤더의 시작 부분에는 ZIP 파일의 표준 서명 인 PK가 표시됩니다. omni.ja 파일의 시작 부분에 아카이브의 파일 인덱스 인 파일 경로가 많이 있습니다.

이제 메모장에서 최적화되지 않은 omni.ja 파일을 살펴 보겠습니다. 우리는 파일의 끝까지 오른쪽으로 스크롤했으며 보시다시피 파일의 색인은 처음이 아닌 여기에 배치됩니다. 파일의 시작 부분을 보면 파일이 PK로 시작하는 것을 볼 수 있습니다.

Firefox가 업데이트 될 때마다 omni.ja 파일이 업데이트되어 수정 된 omni.ja 파일을 덮어 쓰게 될 가능성이 큽니다. Firefox 버전을 최신 상태로 쉽게 유지할 수 있도록 수정 사항을 유지하면서 Firefox 핵심 파일을 수정하는 대신 확장 프로그램을 사용해야하는 주된 이유 중 하나입니다.

에디터의 선택