일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 알고리즘수업-너비우선탐색2
- 크래프톤 정글
- 오블완
- 이벤트 함수 실행 순서
- KRAFTON JUNGLE
- 알고리즘
- TiL
- 티스토리챌린지
- BFS
- 추상클래스와인터페이스
- User Stack
- 유니티
- 크래프톤정글
- 다익스트라
- 크래프톤 정글 4기
- 4기
- 핀토스
- 파이썬
- project3
- pintos
- kraftonjungle
- C
- anonymous page
- 크래프톤정글4기
- 네트워크
- 연결리스트
- c#
- Unity
- 전쟁-전투
- 백준
- Today
- Total
목록분류 전체보기 (160)
말감로그
가상 메모리 (Virtual Memory)가상 메모리란?가상 메모리란 프로세스 전체가 메모리 내에 올라오지 않더라도 실행이 가능하도록 하는 기법이며, 프로그램 용량이 실제 물리 메모리보다 커도 된다는 주요 장점이 있다. 왜 가상 메모리가 필요한가?물리적 공간의 제한을 극복하기 위해 가상 메모리가 나오게 된 이유?실행되는 코드의 전부를 물리 메모리에 존재시켜야 했고, 메모리 용량보다 큰 프로그램은 실행시킬 수 없었다. 또한 멀티 프로세스상에서 여러 프로그램을 동시에 메모리에 올리기에는 용량의 한계와 페이지 교체 등의 성능 이슈가 발생했기 때문에 이를 해결하기 위해 가상 메모리 기법이 나오게 되었다. 가상 메모리를 통해서 우리는 어떤 장점을 얻을 수 있는가?가상 메모리를 통해 프로그램의 일부분만 물리 메모리..
프로세스 동기화 프로세스 동기화는 여러 프로세스가 공유 자원에 동시에 접근할 때 발생할 수 있는 문제를 방지하고, 자원의 일관성을 유지하기 위한 방법이다.다중 프로세스 환경에서는 여러 프로세스가 동시에 실행되며, 이러한 프로세스들이 동일한 자원에 접근할 경우, 의도하지 않은 결과나 경쟁 상태가 발생할 수 있다. 경쟁 상태(Race Condition)두 개 이상의 프로세스가 공유 자원에 동시에 접근하고, 그 결과가 접근 순서에 따라 달라질 때 발생하는 문제이다. 경쟁 상태는 매우 예측하기 어렵고, 잘못된 결과를 초래할 수 있다. 임계 구역(Critical section)공유되는 자원, 즉 동시 접근하려고 하는 자원에서 문제가 발생하지 않게 독점을 보장해줘야 하는 영역이다. 임계 구역을 해결하기 위한 세 가..

CPU의 작업 처리 방식컴퓨터를 이용할 때 프로그램을 수십, 수백개를 켜 놓고 이용한다. 그럼 그 수십수백개의 프로세스들을 고작 8개의 논리적인 스레드로 어떻게 처리하는 것일까?이 원리를 알기 위해서는 병렬성과 동시성이라는 개념을 알고 있어야 한다.동시성 vs 병렬성동시성 (Concurrency)병렬성 (Parallelism)동시에 실행되는 것 같이 보이는 것실제로 동시에 여러 작업이 처리되는 것싱글 코어에서 멀티 쓰레드를 동작시키는 방식멀티 코어에서 멀티 쓰레드를 동작시키는 방식한번에 많은 것을 처리한번에 많은 일을 처리논리적인 개념물리적인 개념 싱글 코어에서는 2개의 작업을 동시에 실행되는 것처럼 보이기 위해 번갈아가면서 작업을 수행한다. 이때 다른 작업으로 바꾸어 실행할 때 내부적으로 Context..

프로세스와 스레드프로세스프로세스는 운영체제로부터 자원을 할당받은 작업의 단위이다.프로세스는 독립적인 주소 공간을 가진다. 이는 프로세스 간의 데이터 공유가 불가능하다.프로세스는 최소한 하나의 스레드를 가지고 있다. * 프로그램 : 컴퓨터에서 실행 할 수 있는 파일 (.exe), 정적 프로그램(파일을 실행하지 않은 상태)* 프로세스 : 프로그램이 실행되고 있는 상태, 동적 프로그램 프로세스의 자원 구조프로그램이 실행되어 프로세스가 만들어지면 다음 4가지의 메모리 영역으로 구성되어 할당 받게 된다. ① 코드 영역 (Code) : 프로그래머가 작성한 프로그램 함수들의 코드가 CPU가 해석 가능한 기계어 형태로 저장되어 있다.② 데이터 영역 (Data) : 코드가 실행되면서 사용하는 전역 변수나 각종 데이터..