[Ubuntu] 프로세스 메모리 사용량 확인 방법

Ubuntu(Devian Linux)에서 특정 프로세스의 메모리 사용량을 확인하는 다양한 방법을 알아보겠습니다. 메모리 사용량을 보여줄 때 RSS(Resident Set Size)로 표현되는데 RSS를 잘 모르신다면 아래 내용을 참고하세요. RSS는 프로세스가 실제로 물리 메모리(RAM)에 상주하는 메모리의 크기를 나타냅니다. RSS는 프로세스가 현재 사용하고 있는 물리적 메모리 양을 측정하며, 킬로바이트(KB) 단위로 표시됩니다. RSS에는 공유 메모리 영역도 포함될 수 있습니다. 여러 프로세스가 같은 물리적 메모리 페이지를 공유하는 경우, 각 프로세스의 RSS에 모두 중복으로 포함됩니다. RSS는 물리 메모리에 상주하는 메모리만 포함되며, 디스크에 스왑된 메모리는 포함되지 않습니다. 1. TOP 명령어를 이용한 방법 2. ps 명령어를 이용한 방법 3. /proc/[pid]/status 를 이용한 방법 4. pmap을 이용한 방법 1. TOP 명령어를 이용한 방법 top 명령어…

[Python] range 역순으로 for문 반복

함수를 사용하여 for문을 역순으로 반복하는 방법에 대해서 알아보겠습니다. 1. 일반적인 range()와 for문 2. range를 이용하여 역순으로 반복 3. “step=-2”로 역순 반복 4. 2중 for문과 range() 1. 일반적인 range()와 for문 는 start를 포함하고 end는 포함하지 않는 범위입니다. for문과 함께 사용되면 아래와 같이 index의 범위를 지정하여 반복할 수 있습니다. Output: 2. range를 이용하여 역순으로 반복 은 start에서 end까지 step 간격으로 숫자를 생성합니다. : 9에서 0까지 -1 간격으로 숫자 생성, 9 -> 8 -> 7 … -> 0의 숫자가 생성됩니다. Output: 3. “step=-2”로 역순 반복 step을 -2로 설정하면, 아래와 같이 9부터 -2간격으로 숫자를 생성하며 반복합니다. : 9에서 0까지 -2 간격으로 숫자 생성, 9 -> 7 -> 5 -> 3 -> 1 Output: 4. 2중 fo…

[Python] 파일 마지막 줄 읽기, 3가지 방법

텍스트 파일에서 마지막 라인만 읽는 방법에 대해서 알아보겠습니다. 1. readlines()를 이용한 방법 2. for문을 이용한 방법 3. readline()을 이용한 방법 1. readlines()를 이용한 방법 는 파일의 텍스트들을 라인으로 읽어서 리스트로 리턴합니다. 의 리턴 값이 있다면, 리스트의 마지막 Index 값을 읽으면 마지막 줄의 문자열을 얻을 수 있습니다. 의 리턴 값이 없다면, 비어있는 파일입니다. Output: 2. for문을 이용한 방법 처럼 파일에 대해서 for 루프를 돌리면, 라인 단위로 파일의 모든 내용을 순회합니다. 아래와 같이 for문으로 순회하면서 마지막 라인을 찾을 수 있습니다. Output: 3. readline()을 이용한 방법 는 파일에서 한 줄을 읽고 문자열을 리턴합니다. 아래와 같이 while문을 이용하여 파일 끝까지 읽으면서, 마지막 라인의 문자열을 찾을 수 있습니다. 의 리턴 값이 빈 값이면, 파일의 끝에 도달함을 의미하며, br…

[Python] 폴더 내 여러 JSON 파일 읽기

특정 디렉토리 아래의 JSON 파일을 모두 읽어서 딕셔너리에 저장하는 방법에 대해서 알아보겠습니다. 1. JSON 파일 읽기 2. 특정 폴더 하위의 모든 JSON 파일 읽기 1. JSON 파일 읽기 아래와 같이 JSON 파일을 읽을 수 있습니다. with로 파일을 열기 때문에, 명시적으로 파일을 닫을 필요가 없습니다. with 구문이 종료되면 자동으로 닫힙니다. : 파일 열기 : json_file 텍스트를 JSON 형식으로 읽고 딕셔너리 구조로 리턴 2. 특정 폴더 하위의 모든 JSON 파일 읽기 특정 폴더 하위의 모든 JSON 파일을 찾아서 읽고, JSON 데이터를 리스트에 저장합니다. 예제에서는 파싱한 모든 데이터를 마지막에 출력합니다. 디렉토리 하위의 모든 파일 탐색 : 파싱한 JSON 객체를 리스트에 저장 : 파싱한 모든 JSON 데이터 출력 Output: