Out Of Memory & OverCommit

2020. 2. 10. 09:57·LINUX/Linux



overcomit_memory

1. Memory commit ?

process에게 메모리 할당시 주소값만 넘겨주고 실제 물리 메모리 Binding은 하지 않는것 

(프로세스 대기 - 실행 - 준비 중 실행만 ㄱ) 

 

2. Overcommit

실제 물리 메모리 용량보다 더 많은 양의 메모리를 임시로 부여하는 것. 

(영혼까지 끌어모았는데 더 요청할 경우 
Badness()가 최대치인 프로세스를  강제종료시켜버림) -> Killed

3. where is it?

/proc/sys/vm

 

 

<overcommit_memory>

Value 0 (default) 1 2
Description Heuristic Algorithm 을 사용하여 Overcommit 양 조절 무조건 Overcommit 성공하게함
※ Overcommit 양이 과도해질 경우 Badness가 높은 Process를 Kill함.

 Overcommit_ratio 에 명시된 비율에 한해서 Overcommit 허용
※ default: RAM 50%

 

[overcommit Setting 구문]

sudo sysctl vm.overcommit_memory=value

[재부팅 시에도 유지하도록 하고싶다면]

/etc/sysctl.conf 에 위 구문 추가

 

[overcommit 관련 세팅사항 확인]

sysctl -a | grep "overcommit"

 

 

4. Error 


Linker (libgs.so.9) 에서 segment가 파일로부터 읽힐 수 있으나 그것이 필요한 물리주소로 매핑될 수 있다는 의미는 아니다.  
이 오류는 그것이 실패한 것이다. 

_dl_map_segment는 mmap과 Map_Fiexed를 부르는데 이놈들은 에러를 발생한다 만약 페이지가 요구된 주소로 매핑될수 없을 때 (이미 뭔가 다른 주소에 매핑된 이유로)_ 물론 수천가지 다른 이유도 생길 수 있음.

 

 

5. Reference

https://unix.stackexchange.com/questions/496292/what-does-a-failed-to-map-segment-from-shared-object-error-mean
https://brunch.co.kr/@alden/16#comment
저작자표시 (새창열림)

'LINUX > Linux' 카테고리의 다른 글

[Linux] node.js 최신버전 설치  (0) 2021.05.20
rpm package with command  (0) 2020.11.10
데몬 & 서비스 / 소켓  (0) 2020.02.09
[Linux] apt package manager  (0) 2020.02.06
Ubuntu RSA Authentication (Feat. SSH, Putty, Filezilla)  (0) 2020.02.05
'LINUX/Linux' 카테고리의 다른 글
  • [Linux] node.js 최신버전 설치
  • rpm package with command
  • 데몬 & 서비스 / 소켓
  • [Linux] apt package manager
M_Falcon
M_Falcon
  • M_Falcon
    Falcon
    M_Falcon
  • 전체
    오늘
    어제
    • 분류 전체보기 (432)
      • Web (16)
        • Nodejs (14)
        • Javascript (23)
        • FrontEnd (4)
      • DataBase (39)
        • Fundamental (1)
        • Redis (4)
        • PostgreSQL (10)
        • NoSQL (4)
        • MySQL (9)
        • MSSQL (3)
        • Error (4)
      • Algorithm (79)
        • Algorithm (문제풀이) (56)
        • Algorithm (이론) (23)
      • JVM (65)
        • Spring (13)
        • JPA (5)
        • Kotlin (13)
        • Java (24)
        • Error (7)
      • 기타 (70)
        • Kafka (3)
        • Kubernetes (3)
        • Docker (13)
        • git (19)
        • 잡동사니 (27)
      • 재테크 (11)
        • 세무 (4)
        • 투자 (3)
        • 보험 (0)
      • BlockChain (2)
        • BitCoin (0)
      • C (32)
        • C (10)
        • C++ (17)
        • Error (3)
      • Low Level (8)
        • OS (3)
        • 시스템 보안 (5)
      • 네트워크 (3)
      • LINUX (30)
        • Linux (26)
        • Error (4)
      • 저작권과 스마트폰의 이해 (0)
      • 생각 뭉치 (6)
      • 궁금증 (2)
      • Private (4)
        • 이직 경험 (0)
        • 꿈을 찾아서 (1)
      • Android (21)
        • OS (4)
  • 블로그 메뉴

    • 홈
    • WEB
    • 알고리즘
    • DataBase
    • Linux
    • Mobile
    • C
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    algorithm
    PostgreSQL
    Kotlin
    백준
    Bitcoin
    linux
    Programmers
    Git
    프로그래머스
    알고리즘
    java
    kafka
    ubuntu
    Spring
    C++
    javascript
    database
    android
    JPA
    docker
  • hELLO· Designed By정상우.v4.10.3
M_Falcon
Out Of Memory & OverCommit
상단으로

티스토리툴바