공log/[CS] 5

[CS] #4 Computer Science

컴퓨터 공학 문제 오답 위주로 정리한 내용입니다. 운영체제 하드웨어 시스템 자원을 관리하는 관리자 응용 프로그램이 필요로하는 시스템 자원을 제공하는 소프트웨어 여러 응용 프로그램 중 특정 시간에 어떤 응용 프로그램을 실행시킬지를 관리한다. 한번에 여러 응용 프로그램을 실행시킬 수 있도록 한다. 응용 프로그램을 사용하는 사용자를 관리한다. 운영체제는 직접 시스템 자원을 관리하며, 응용 프로그램과 라이브러리는 시스템 자원을 요청할 때 시스템 콜을 사용합니다. 그러나 라이브러리를 통하지 않고도 운영체제는 시스템 자원을 관리합니다. 커널 사용자가 운영체제 기능과 서비스를 조작할 수 있도록 하는 프로그램 하드웨어가 요청하는 시스템 자원을 제공하고 관리하는 관리자 운영체제가 하드웨어 시스템 자원을 관리해야 하는 이..

공log/[CS] 2023.08.22

[CS] #3 Computer Science

컴퓨터 공학 문제 오답 위주로 정리한 내용입니다. Flynn의 분류 방법(Flynn's taxonomy) SISD (Single Instruction stream, Single Data stream): 이 유형에서는 하나의 명령어 스트림과 하나의 데이터 스트림이 있는 단일 프로세서가 작업을 수행합니다. 이는 전통적인 단일 프로세서 컴퓨터 아키텍처를 나타냅니다. SIMD (Single Instruction stream, Multiple Data streams): 이 유형에서는 하나의 명령어 스트림이 여러 개의 데이터 스트림에 대해 병렬로 작업을 수행하는 다수의 프로세서가 있는 아키텍처를 나타냅니다. 예를 들어, 벡터 프로세싱이나 GPU의 구조가 여기에 해당됩니다. MIMD (Multiple Instruct..

공log/[CS] 2023.08.18

[CS] #2 Computer Science

컴퓨터 공학 문제 오답 위주로 정리한 내용입니다. 컨텍스트 스위칭 동작의 단계 1단계: 실행 중지할 프로세스의 PCB 에 현재 CPU의 PC와 SP 레지스터 값을 저장한다. 2단계: 다음 실행할 프로세스의 바이너리 코드를 저장매체(SSD/HDD)에서 찾아서, 해당 프로세스의 PCB(Process Control Block) 정보를 읽어온다. 3단계: 읽어온 다음 실행할 프로세스의 기존 PC와 SP 값을 CPU의 해당 레지스터에 업데이트한다. 4단계: 다음 실행할 프로세스를 CPU에서 실행한다. 프로세스간 커뮤니케이션 프로세스는 기본적으로는 다른 프로세스의 사용자 영역 공간을 직접 접근할 수 없다. 이것이 프로세스간 커뮤니케이션을 보다 안전하게 관리하는 이유 중 하나이다. 프로세스 간에 데이터를 공유하려면 ..

공log/[CS] 2023.08.10

[CS] #1 Computer Science

컴퓨터 공학 문제 오답 위주로 정리한 내용입니다. 컴퓨터 하드웨어에는 Output Device, Input Device,Storage가 속한다. Operating System는 소프트웨어의 한 종류이다. 주기억장치에는 레지스터, SRAM, DRAM, ROM이 속하고, 보조기억장치에는 하드 디스크, USB memory, SSD, Bluray가 속한다. 양자컴퓨터는 양자의 기본 성질인 중첩, 얽힘 등을 이용하여 다수의 정보를 처리할 수 있는 새로운 개념의 컴퓨터이다. 현재 나노공정 설계로 제작되는 반도체 칩의 한계를 극복하기 위해 등장하였다. 양자컴퓨터는 큐비트(qubit)를 기준으로 하는 양자 병렬처리를 통해 엄청나게 빠른 속도로 문제 해결이 가능하다. 양자컴퓨터는 현재 양산 가능한 형태로 기술이 개발되어..

공log/[CS] 2023.08.04

[Study] #1 Multi-Thread

🌘 Thread(스레드) Light Weight Process 라고도 함 프로세스 프로세스 간에는 각 프로세스의 데이터 접근이 불가능 스레드동시 실행 가능 프로세스의 데이터를 모두 접근할 수 있음 하나의 프로세스에 여러개의 스레드 생성 가능 🌗 Multi Thread 스레드는 일동의 함수로 구현되어 각각의 스레드마다 별도의 스택 영역을 가지고 동작한다. 멀티 태스킹과 멀티 프로세싱 멀티 태스킹 : 다수의 작업이 중앙 처리 장치(CPU)와 같은 공용자원을 나누어 사용하는 것 (→ 스레드) 멀티 프로세싱 : 하나의 프로세스에서 실행되어야 할 작업들을 여러개로 분리한후에 각각의 CPU 코어에 넣어서 병행하여 실행하게끔 만듬. 이때 스레드를 만들어 분리하면 되고 스레드들을 지원해서 여러 코어에서 스레드가 동시에..

공log/[CS] 2023.07.26
728x90