스터디 4

OS 지식

OS의 일반적인 작동 원리운영 체제는 컴퓨터 하드웨어와 소프트웨어 간의 중재자 역할을 하며, 시스템 자원을 효율적으로 관리하고 사용자와 애플리케이션이 이를 쉽게 사용할 수 있도록 도와줍니다.운영 체제의 주요 기능은 다음과 같습니다:프로세스 관리: 운영 체제는 여러 프로그램이 동시에 실행될 수 있도록 CPU 시간을 할당하고, 각 프로세스 간의 자원 충돌을 방지하며, 문맥 전환을 통해 효율적으로 멀티태스킹을 지원합니다.메모리 관리: 운영 체제는 각 프로세스에 필요한 메모리를 할당하고, 가상 메모리 기법을 통해 물리적 메모리를 효율적으로 사용합니다. 이를 통해 메모리 부족 시에도 프로그램이 원활히 실행될 수 있도록 합니다.파일 시스템 관리: 운영 체제는 데이터를 파일 단위로 저장하고, 이를 디렉터리 구조로 관..

WIL/스터디 2024.08.27

인터넷 지식

인터넷의 작동 원리먼저, 인터넷에 연결된 각 장치는 고유한 IP 주소를 가지고 있으며, 사용자가 웹사이트에 접근할 때는 도메인 이름을 통해 IP 주소를 찾아냅니다. 이 과정은 DNS 서버를 통해 이루어집니다.데이터는 작은 패킷으로 나뉘어 전송되며, 각 패킷은 라우터를 통해 목적지까지 전달됩니다. 이때 TCP/IP 프로토콜이 데이터를 신뢰성 있게 전달하는 역할을 합니다.사용자가 웹사이트를 요청하면, 클라이언트는 서버에 HTTP 또는 HTTPS 요청을 보내고, 서버는 요청에 따라 웹 페이지나 데이터를 응답합니다. 이러한 모든 과정은 ISP를 통해 이루어집니다. HTTP란?HTTP(HyperText Transfer Protocol)는 웹에서 클라이언트와 서버 간에 데이터를 주고받기 위한 표준 프로토콜입니다. ..

WIL/스터디 2024.08.27

Malloc Lab

Mallocmalloc은 지정된 크기만큼의 메모리를 할당하고 할당된 메모리의 시작주소를 반환한다.이 때, 할당된 메모리는 초기화되지 않기 때문에 그 위치에 저장된 값들이 남아 있을 수 있다. Calloccalloc은 malloc과 같이 메모리를 할당해주지만, 할당된 메모리의 값을 모두 0으로 초기화한다. Implicit Malloc (암시적)프로그래머가 직접 메모리 할당을 지시하지 않아도 컴파일러 혹은 런타임이 자동으로 메모리를 할당하는 경우. 보통 가비지 컬렉션이 있는 언어인 Java나 Python에서 객체를 생성할 때 명시적으로 메모리 할당을 하지 않아도 된다. 내부 단편화가 발생할 수 있고 속도가 상대적으로 느리다. Explicit Malloc (명시적)프로그래머가 직접 메모리 할당을 지시하고, 할..

WIL/스터디 2024.08.25

Virtual Memory

가상메모리란 무엇인가?물리 메모리(RAM)에 한계가 있기 때문에 이를 보완하기 위해 만든 것이 가상 메모리입니다. HDD나 SSD의 자원을 끌어다써서 메모리 공간을 추상화시켜 OS가 자신의 메모리가 마치 무한한 것처럼 사용할 수 있게 해줍니다. 1. 페이지페이지는 가상 메모리에서의 기본 단위입니다. 운영 체제는 각 프로세스에 가상 메모리 공간을 제공하며, 이 가상 메모리 공간은 일정한 크기의 페이지로 나뉩니다. 페이지는 프로세스가 사용하는 메모리 블록을 의미하며, 가상 주소 공간에서 특정 범위의 주소를 나타냅니다.2. 프레임프레임은 물리 메모리(RAM)에서의 기본 단위입니다. 물리 메모리는 프레임이라는 고정된 크기의 블록으로 나누어져 있으며, 각 프레임은 가상 메모리의 페이지와 매핑됩니다.3. 페이지 테..

WIL/스터디 2024.08.23