전공 49

Chapter2 운영체제 개요2(OS의 구조)

더보기 목차 1. 운영체제의 서비스 2. user Operation System Interface 3. System Calls이란? 4. 운영체제의 여러 구조 1. 운영체제의 서비스 사용자가 실행하는 프로그램이 보다 나은 환경에서 돌아감으로써 사용자에게 신뢰성과 편리성을 제공한다. 응용 프로그램은 사용자가 원하는 무엇인가를 제공해야하지만 사용자 프로그램이 신뢰성있게 돌아가게 하는 것이 os의 역할이다. 운영체제가 제공하는 서비스를 살펴보면, 사용자의 프로그램이 안정적으로 돌아갈 수 있도록 환경을 제공하는데 그런 기능을 세부적으로 나누면 ● System Call과 같은 User Interface 제공 거의 모든 OS에서는 사용자 인터페이스(UI)를 제공한다. 여러 형태 중 그래픽 사용자 인터페이스(GUI)..

전공/운영체제 2022.05.05

Chapter1 운영체제 개요1

더보기 목차 1. Device Controller와 Local Buffer 2. Interrupt Vector Table, Interrupt Service Routine 3. I/O Structure(buffered IO) 4. Cacing이란(with locality) 5. DeadLock 1. Device Controller와 Local Buffer I/O 디바이스의 처리와 CPU의 처리 작업은 동시(Parallelism)에 실행된다. os가 바라보는 device(키보드, 마우스 등)는 논리적 형태의 파일로 바라본다. 이 논리적 파일을 Device Controller라고 한다. 즉 os는 프로그램 형태로 Device를 바라본다. 또한 Device Controller는 local buffer를 가지고 ..

전공/운영체제 2022.05.05

부산 공연 조회 서비스 (프로젝트)

부산 지역 공연 조회 서비스 0. Member 및 기여도 201610600 김동균: 20% 201811710 문윤식: 40% 201811713 문정훈: 40% 1. Background 코로나19로 인해 현재 공연계는 매우 어려운 실정에 처하여 있다. 특히, 중 극장 및 소 극장과 같이 작은 규모의 극장과 객단들은 집단 폐업 및 실업이 이뤄지고 있음이 현실이다. 생업을 위협받고 있는 이들은 대안으로 온라인 공연을 여는 등의 노력을 하고 있지만 이전에 비해 크게 나아지지 않았다. 마찬가지로 관객들 또한 오프라인 공연에 목마른 상태이기도 하다. 하지만 위드 코로나와 함께 다시 공연이 확대되고 있는 추세이며, 이는 침체된 공연계에 활력을 불어넣을 수 있는 기회이다. 이렇게 어려운 공연계에 조금이나마 도움을 보태..

10. Threading

1. Programs, Processes, and Threads 1) Threading 하나의 프로스에서 여러개 단위의 실행(작업의 실행)을 생성하고 관리하는 기법이다. CPU는 멀티 코어로 여러 개의 코어로 이루어질 수 있다. processor는 CPU와 같다. 하나의 processor에 여러개의 코어가 있다면 각각의 코어에 각각 다른 process의 thread가 병렬로 실행될 수 있다. ※ 병렬 처리 여러 작업이 동시에 실행되는 것이다. Threading을 이해하기 위해 CPU인 processor는 1개의 코어만 가진다고 가정, 한 process는 여러 개의 스레드로 동작할 수 있다. 위 가정에서 processor는 process안의 thread를 병렬로 처리할 수 없다. 2) Binaries 컴파..

8. Pipeline이란

Multy Cycle Design을 이용해 pipeline을 통해 processor의 성능을 개선시키는 방법에 대해 정리하겠습니다. Pipelining (1) Pipelining이란 동시에 여려개의 명령어를 overlapped하여 실행하는 방법을 말합니다. 프로세스에서 pipeline은 전체 프로세스를 여러 stage로 나누어 동시에 여러개의 명령어가 서로 다른 stage상에 위치하게 함으로써 동시에 여러 명령어를 처리하는 방식을 말합니다. ● 장점 단위 시간당 처리되는 명령어의 수를 높힙니다. 이는 instructino throghput을 높이는 것과 같은 의미입니다. 그리고 datapath 상에 resource인 functional unit의 사용역시 개선 시킬 수 있습니다. ● 단점 stage를 나..

7. Pipeline에서 데이터 처리

1. single core 5-stage pipeline MIPS processor에서 Data forwarding 기술이 적용되지 않았을 때, 아래 명령어들이 어떻게 실행되는지 정리 cycle 명령어 1 2 3 4 5 6 7 8 1 add r3, r2, r1 IF ID EX MEM WB 2 sub r4, r3, r5 IF ID EX MEM WB 3 add r6, r3, r5 IF ID EX MEM WB 4 add r7, r3, r5 IF ID EX MEM WB 위 4가지 명령어를 차례로 명령어1, 명령어2, 명령어3, 명령어4라고 하겠습니다.! ● Datapath, Control의 개념 프로세서는 datapath와 control로 구성되어 있습니다. 그 중 datapath는 말 그대로 데이터가 흘러가는..

5. CPI 계산과 CPU time 구하기

1) 프로그램 A를 실행 했을 때, CPI는 얼마인가? ● Performance 컴퓨터를 사용하는 사용자 입장에서는 작업을 시작하고 종료하기 까지의 시간 (response time)이 중요할 것입니다. 이런 관점에서 Performance를 논할 때 이와 관련된 척도를 정리해야합니다. ● 성능의 척도 clock cycle 컴퓨터는 하드웨어적으로 명령어의 이벤트가 발생되는 시점을 결정하는데 이것을 clock 신호라 합니다. clock cycle 이란 일정한 속도를 가지고 동작하는 프로세스의 clock의 한 주기동안의 시간을 의미합니다. clock period clock 주기란 clock 사이클에서 한 주기가 도는데 걸리는 시간을 의미하며 이는 clock frequency(clock speed)와 역수 관계입..

8. SQL 프로그래밍 기법

1. 개요 1) 개요 응용 프로그램에서 SQL 데이터베이스를 접근하는 기법들에 대해 정리한다. 이전 절에서 정리한 SQL 문법은 데이터 베이스 연산들을 위한 구조에 대해 정리한 것이다. ORACLE REMBS와 같은 대부분의 DB 시스템은 "대화식 인터페이스"라고 SQL 명령문을 모니터 상에서 입력하고 DB 시스템에서 실행할 수 있다. 예를 들어 ORACLE REMBS를 컴퓨터에 설치하고 SQLPLUS 명령을 실행하면 ORACLE이 제공하는 대화식 인터페이스가 시작되며 이곳에 SQL 명령어나 질의들을 여러줄 입력하고 끝에 세미콜론과 엔터키를 입력하여 DB 시스템에서 명령어들을 실행할 수 있다. 위와 같은 대화식 인터페이스를 통해서 가끔 실행되는 임의의 질의를 수행하는데는 편리하지만 주로 실제로 DB의 동..

7. 데이어 링크 층 : 하위부계층 MAC(media access control)

Data link layer Data link control Multiple-access control 6절에서 데이터링크층의 상부부계층에 대해 설명하였다. 7절에서는 데이터링크층의 하위부계층 MAC에 대해 설명한다. MAC란 노드 또는 지국이 다중점 또는 브로드캐스트 링크라고 하는 공유 링크를 사용할 때는 링크에 접근하는 것을 조율하기 위한 다중 접근 프로토콜이 필요하게 된다. 예를 들어 공유 링크에 지국 A, B, C, D가 공유하고 있고 A와 B가 통신하는 중(공유 링크 사용) C와 D가 통신하려하면 공유링크를 역시 사용하므로 A, B 통신에 대해 C, D 통신은 noise가 되 수 있고 바대로 C, D 통신에 A, B 통신이 noise가 될 수 있다. 이것을 제어하는 것을 MAC 라고한다. MAC..