https://github.com/turbobit/chromememorymanager
A Python tool to monitor and manage Chrome process memory usage, featuring a user-friendly GUI and system tray support.
https://github.com/turbobit/chromememorymanager
chrome memory-management optimization-tools process-monitoring-tools python
Last synced: 11 months ago
JSON representation
A Python tool to monitor and manage Chrome process memory usage, featuring a user-friendly GUI and system tray support.
- Host: GitHub
- URL: https://github.com/turbobit/chromememorymanager
- Owner: turbobit
- Created: 2024-11-22T02:07:01.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-11-22T02:39:40.000Z (about 1 year ago)
- Last Synced: 2025-01-23T15:53:52.615Z (about 1 year ago)
- Topics: chrome, memory-management, optimization-tools, process-monitoring-tools, python
- Language: Python
- Homepage:
- Size: 129 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Chrome Memory Manager

## 개요
**Chrome Memory Manager**는 사용자의 시스템에서 실행 중인 Chrome 프로세스의 메모리 사용량을 모니터링하고, 메모리 임계값을 초과하는 프로세스의 메모리를 관리하기 위한 Python 기반 도구입니다. 이 도구는 사용자가 Chrome의 메모리 사용을 조절하고, 필요할 경우 프로세스를 종료하거나 메모리 사용을 줄이는 데 도움을 줍니다. 이 프로그램은 GUI 인터페이스를 제공하며, 시스템 트레이로 숨길 수 있는 기능을 포함하고 있습니다.
## 주요 기능
- Chrome 프로세스의 메모리 사용량을 실시간으로 모니터링
- 사용자가 설정한 메모리 임계값을 초과할 경우 메모리 정리 수행
- GUI에서 메모리 사용 현황을 확인하고 개별 프로세스를 종료할 수 있는 기능
- 트레이 아이콘을 사용하여 GUI를 최소화하거나 숨길 수 있는 기능
## 요구 사항
이 프로그램을 실행하기 위해서는 다음의 Python 라이브러리가 필요합니다:
- `psutil`: 프로세스와 시스템의 메모리 정보를 가져오는 데 사용됩니다.
- `tkinter`: GUI 인터페이스를 제공하는 Python 표준 라이브러리입니다.
- `pystray`: 시스템 트레이 아이콘을 사용하기 위한 라이브러리입니다.
- `Pillow (PIL)`: 트레이 아이콘 이미지를 생성하기 위해 사용됩니다.
라이브러리를 설치하려면 다음 명령어를 사용하세요:
```sh
pip install psutil pystray Pillow
```
## 사용 방법
1. **프로그램 실행**
- 스크립트를 실행하여 프로그램을 시작합니다.
- GUI가 실행되며, 기본적으로 Chrome 프로세스의 메모리 사용량을 모니터링할 수 있습니다.
2. **모니터링 시작 및 중지**
- "Start Monitoring" 버튼을 눌러 Chrome 메모리 사용량 모니터링을 시작합니다.
- "Stop Monitoring" 버튼을 눌러 모니터링을 중지할 수 있습니다.
3. **모니터링 간격 설정**
- 모니터링 간격(분 단위)을 설정할 수 있는 입력창이 제공됩니다.
- 입력 후 "Set Monitoring Interval (minutes)" 버튼을 눌러 간격을 설정하세요.
4. **메모리 사용 현황 보기 및 정리**
- "Show Current Memory Usage" 버튼을 눌러 현재 Chrome 프로세스의 메모리 사용 현황을 확인할 수 있습니다.
- "Clear Memory" 버튼을 눌러 임계값을 초과하는 프로세스의 메모리를 정리할 수 있습니다.
5. **GUI 숨기기**
- "Hide GUI from Task Manager" 버튼을 눌러 프로그램 창을 숨기고 트레이 아이콘에서 관리할 수 있습니다.
- 트레이 아이콘을 더블 클릭하거나 "Show" 메뉴를 사용해 창을 다시 열 수 있습니다.
6. **Chrome 프로세스 종료**
- 메모리 사용량 목록에서 각 프로세스별로 "Kill PID" 버튼을 눌러 특정 Chrome 프로세스를 종료할 수 있습니다.
7. **실행 파일 생성**
- 다음 명령어를 사용하여 실행 파일을 생성할 수 있습니다:
```sh
python -m PyInstaller --onefile --windowed --icon=chromeMemoryManager_icon.ico --add-data "chromeMemoryManager_icon.ico;." chromeMemorymanager.py
```
- 이 명령어는 `chromeMemorymanager.py` 스크립트를 단일 실행 파일로 변환합니다.
## 주의 사항
- 메모리 정리 기능은 Windows 운영체제에서만 동작합니다. `ctypes` 라이브러리를 사용해 Chrome 프로세스의 Working Set을 비우는 방식으로 구현되어 있기 때문에 Linux나 macOS에서는 사용할 수 없습니다.
- 시스템 권한 문제가 발생할 경우, 관리자 권한으로 프로그램을 실행해야 할 수 있습니다.
## 실행 예시
1. 프로그램을 시작하면 GUI가 열리며, Chrome 프로세스의 메모리 사용량을 확인하고 관리할 수 있습니다.
2. "Start Monitoring" 버튼을 누르면 설정된 간격마다 Chrome 메모리 사용량을 모니터링합니다.
3. 메모리 사용량이 임계값을 초과하면, 프로그램이 자동으로 메모리를 정리하려고 시도합니다.
## 종료 방법
- 시스템 트레이 아이콘에서 "Quit" 메뉴를 선택하거나 프로그램 창에서 직접 종료할 수 있습니다.
## 추가 정보
이 프로그램은 크롬 브라우저의 메모리 사용량을 줄이는 데 도움을 주기 위해 설계되었습니다. 이를 통해 시스템 성능을 개선하고, 과도한 메모리 사용으로 인한 문제를 예방할 수 있습니다.
문의 사항이나 버그 보고는 GitHub Issues에 등록해 주시기 바랍니다.