본문 바로가기

리눅스 이야기58

프로세스 가상메모리 프로세스 가상메모리 제대로 파헤쳐보자!가상 메모리의 개념 1.가상 메모리의 기본 개념 - 가상 메모리는 프로그램들이 물리적 메모리를 직접 사용하지 않고, 간접적으로 사용하는 메모리 관리 기법입니다. - 물리 메모리는 여러 개의 페이지 프레임(보통 4KB 크기)으로 나눠지며, 각 프로그램은 가상 주소를 통해 물리 메모리에 접근합니다. 2.물리 페이지와 페이지 프레임 - 물리 페이지(Physical Page)와 페이지 프레임(Page Frame)은 동일한 개념으로, 물리 메모리의 작은 조각을 의미합니다. - 물리 페이지는 하드웨어 관점에서 나눠진 메모리 조각이며, 리눅스 커널이 이들을 관리합니다. 3.가상 주소와 물리 주소의 매핑 - 프로그램들은 가상 주소를 사용하며, 리눅스 커널은 가상 주소를 물리 주소에.. 2024. 5. 30.
가상메모리가 무엇일까요? free -m가상메모리가 무엇일까요? 1. 리눅스와 DRAM 메모리오늘은 가상 메모리에 대해 이야기해보겠습니다. 리눅스를 다루면서 가상 메모리에 대한 내용을 많이 접하셨을 것이라고 생각합니다. 이 부분을 명확하게 설명해보겠습니다. 임베디드 시스템들, 예를 들어 세탁기, 냉장고뿐만 아니라 차량용 시스템에서도 리눅스가 자주 사용됩니다. 특히 자율주행 시스템에서도 리눅스는 중요한 역할을 합니다. 안드로이드 시스템 역시 리눅스 기반이기 때문에, 리눅스는 스마트 공장과 인공지능 스피커 같은 곳에서도 널리 사용됩니다.오늘은 메모리에 대한 얘기를 서버 중심으로 다루겠습니다. 리눅스 환경에서 메모리 카드가 몇 개인지, 보드가 어떤지 같은 스펙 차이는 있지만, 모든 리눅스 환경에서 공통적으로 적용되는 이야기입니다. 특히.. 2024. 5. 14.
서버 개발자와 서버 엔지니어의 차이점 서버 개발자와 서버 엔지니어의 차이점다음은 서버 개발자와 서버 엔지니어의 차이점에 대해알아보았습니다. 1. 서버개발자와 엔지니어의 정의   - 서버 개발자:      - 서버 측 애플리케이션, 시스템, 소프트웨어를 개발합니다.      - 서버 기능을 구현하고 소프트웨어가 서버와 효율적으로 작동하도록 코드를 작성합니다.    - 서버 엔지니어:      - 서버 하드웨어와 네트워크를 관리, 유지, 최적화합니다.      - 시스템 보안, 서버 상태 관리, 설정 등을 담당합니다. 2. 서버 엔지니어와 개발자의 주요 차이점   ●업무 범위:      - 개발자: 주로 프로그래밍 업무를 담당합니다.      - 엔지니어: 서버 하드웨어 관리, 유지보수, 최적화에 더 관여합니다.    ●필요한 기술:      .. 2024. 5. 8.
라즈베리파이로 임베디드 공부하는 방법 라즈베리파이로 임베디드 공부하는 방법 ●디바이스 제어 방법과 비트 연산(AND/OR 등) 및 비트 값 출력 확인 방법 디바이스 제어 방법에는 비트 연산(AND, OR 등)과 비트 값의 출력 확인 방법이 포함됩니다. 이번 설명에서는 라즈베리파이 4를 기준으로 임베디드 공부 방법을 소개합니다. 라즈베리파이 3를 사용하시는 경우에도 이 방법을 적용할 수 있습니다. 비트 연산은 기초적이지만, 준비되지 않은 상태에서는 어렵게 느껴질 수 있습니다. AND 연산은 두 비트 모두 1일 때 결과가 1이 되고, OR 연산은 두 비트 중 하나라도 1이면 결과가 1이 됩니다. 이러한 비트 연산을 통해 하드웨어를 제어하는 것이 중요하며, 기본적인 내용이지만 반드시 숙지해야 합니다. 디바이스를 제어할 때는 syscall, pro.. 2024. 4. 11.