Skip to content

A Python tool to monitor and manage Chrome process memory usage, featuring a user-friendly GUI and system tray support.

Notifications You must be signed in to change notification settings

turbobit/ChromeMemoryManager

Repository files navigation

Chrome Memory Manager

image

개요

Chrome Memory Manager는 사용자의 시스템에서 실행 중인 Chrome 프로세스의 메모리 사용량을 모니터링하고, 메모리 임계값을 초과하는 프로세스의 메모리를 관리하기 위한 Python 기반 도구입니다. 이 도구는 사용자가 Chrome의 메모리 사용을 조절하고, 필요할 경우 프로세스를 종료하거나 메모리 사용을 줄이는 데 도움을 줍니다. 이 프로그램은 GUI 인터페이스를 제공하며, 시스템 트레이로 숨길 수 있는 기능을 포함하고 있습니다.

주요 기능

  • Chrome 프로세스의 메모리 사용량을 실시간으로 모니터링
  • 사용자가 설정한 메모리 임계값을 초과할 경우 메모리 정리 수행
  • GUI에서 메모리 사용 현황을 확인하고 개별 프로세스를 종료할 수 있는 기능
  • 트레이 아이콘을 사용하여 GUI를 최소화하거나 숨길 수 있는 기능

요구 사항

이 프로그램을 실행하기 위해서는 다음의 Python 라이브러리가 필요합니다:

  • psutil: 프로세스와 시스템의 메모리 정보를 가져오는 데 사용됩니다.
  • tkinter: GUI 인터페이스를 제공하는 Python 표준 라이브러리입니다.
  • pystray: 시스템 트레이 아이콘을 사용하기 위한 라이브러리입니다.
  • Pillow (PIL): 트레이 아이콘 이미지를 생성하기 위해 사용됩니다.

라이브러리를 설치하려면 다음 명령어를 사용하세요:

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. 실행 파일 생성

    • 다음 명령어를 사용하여 실행 파일을 생성할 수 있습니다:
    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에 등록해 주시기 바랍니다.

About

A Python tool to monitor and manage Chrome process memory usage, featuring a user-friendly GUI and system tray support.

Topics

Resources

Stars

Watchers

Forks

Languages