728x90
반응형
SMALL

CS 기초 5

[운영체제] 메모리의 구조

운영체제에서 바라보는 메모리의 영역은 4개로 구분된다. 1. 코드 영역 (Code) 2. 데이터 영역 (Data) 3. 힙 영역 (Heap) 4. 스택 영역 (Stack) 일단, 이 내용이 문제로 나왔었는데, 1번 코드영역에 대해서 잘 몰라서, 코드영역은 틀렸다. 그래서 다시 복기하는 차원에서 다시 공부해본다. 1. 코드 영역 -> 실행할 프로그램의 코드가 저장되는 영역이다. 텍스트 영역이라고도 한다. 프로그램이 시작되고 종료될 때까지 메모리에 남아있는다. >> 내가 이걸 함수가 들어있는 공간이라고 썼다.....;; 무조건 틀렸으니 꼭 기억해두자. 2. 데이터 영역 -> static(정적) 변수, 전역변수가 저장되는 영역이다. 프로그램이 시작될때 생기고 종료할 때 사라진다. > 얘는 맞았다. 3. 힙 영..

CS 기초 2021.11.01

[Design Pattern] MVC Pattern

오늘 알아볼 내용은 MVC 패턴이다. MVC패턴이란? - 모델-뷰-컨트롤러(model–view–controller, MVC)는 소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴이다. 이 패턴을 성공적으로 사용하면, 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다. MVC에서 모델은 애플리케이션의 정보(데이터)를 나타내며, 뷰는 텍스트, 체크박스 항목 등과 같은 사용자 인터페이스 요소를 나타내고, 컨트롤러는 데이터와 비즈니스 로직 사이의 상호동작을 관리한다. 응용 소프트웨어 - 위키백과, 우리 모두의 백과사전 앱은 여기로 연결됩니다. 영화에 대해서는 앱 (영화) 문서를 참고하..

CS 기초 2021.09.28

[CS기초] 컴파일러, 인터프리터

오늘 알아볼 내용은 컴파일과 인터프리터이다. 컴파일러는 뭐하는놈인가?? 컴파일러(compiler, 순화 용어: 해석기, 번역기)는 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어로 옮기는 언어 번역 프로그램을 말한다. 컴파일러는 high-level programming language를 실행 프로그램을 만들기 위한 lower level language(예, 어셈블리 언어, object 코드, machine code)로 바꾸는 데 사용된다. 원래의 문서를 소스 코드 혹은 원시 코드라고 부르고, 출력된 문서를 목적 코드라고 부른다. 목적 코드는 주로 다른 프로그램이나 하드웨어가 처리하기에 용이한 형태로 출력되지만 사람이 읽을 수 있는 문서 파일이나 그림 파일 등으로 옮기는 경우도 있다. 원시 ..

CS 기초 2021.09.14

[운영체제] 프로세스와 쓰레드

프로세스와 쓰레드에 대해 알아보자. 프로세스는 무엇인가? - 프로세스(process)는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다. 종종 스케줄링의 대상이 되는 작업(task)이라는 용어와 거의 같은 의미로 쓰인다. 여러 개의 프로세서를 사용하는 것을 멀티프로세싱이라고 하며 같은 시간에 여러 개의 프로그램을 띄우는 시분할 방식을 멀티태스킹이라고 한다. 프로세스 관리는 운영 체제의 중요한 부분이 되었다. 운영 체제 - 위키백과, 우리 모두의 백과사전 운영 체제(運營 體制, 문화어: 조작 체계) 또는 오퍼레이팅 시스템(Operating System, 약칭:OS)은 시스템 하드웨어를 관리할 뿐 아니라 응용 소프트웨어를 실행하기 위하여 하드웨어 추상화 플랫폼과 ko.wikipedia.org 간..

CS 기초 2021.09.13

[운영체제] CPU 스케줄러

CPU의 스케줄링에 대해 알아보자. 스케줄링은 무엇인가? - OS의 Ready Queue에 있는 프로세스들을 특정 우선순위를 기반으로 CPU를 할당받게 해주는 알고리즘이다. 스케줄링 알고리즘의 종류는 무엇이 있는가? - FCFS (First Come First Served) - SJF (Shortest Job First) - Priority Scheduling - RR (Round Robin) 하나씩 알아보도록 하자. FCFS (First Come First Served) - 말 그대로 먼저 온 프로세스부터 처리하는 알고리즘이다. 문제점 : 소요시간이 긴 프로세스가 먼저 도달할 경우 효율성을 낮추는 현상이 생길 수 있다. SJF (Shortest Job First) - 먼저 도착한 프로세스와 상관 없이,..

CS 기초 2021.09.13
728x90
반응형
LIST