학교 수업
-
OS의 process synchronization?학교 수업/OS 2020. 5. 5. 17:28
이전에는 OS의 프로세스 관리 법 중 프로세스 스케줄링에 대해 배웠다면지금은, 프로세스 동기화에대해 배워보자. Synchronization Synchronization(동기화)가 필요한 이유 병행 프로세스 : 두 개 이상의 프로세스가 동시에 실행 상태에 있는 것으로 병행성이 높아져 시스템 성능은 향상되지만 공유자원 선점을 위한 프로세스 간 경쟁현상*이 발생하게 된다. Race condition : 동시에 여러 개의 프로세스들끼리 하나의 자원을 두고 서로 경쟁하는 상황 자료의 일관성을 해치는 결과가 나타낼 수 있다. -> 이 문제를 해결하기 위해서는, 동기화가 필요하다 동기화(Synchronization)? 병행프로세스가 공유자원을 사용할 때, 프로세스 간 처리순서를 결정하는 방법 동기화 하는 방법(mut..
-
OS의 process scheduling학교 수업/OS 2020. 5. 3. 23:26
운영체제는 자원관리 기능을 수행하는데, 자원관리 기능 중 프로세스 관리가 있다. 프로세스란 무엇이고, 어떻게 프로세스를 관리(스케줄링, 동기화, 교착상태해결)하는지 자세히 알아보자. Process 프로세스(process) : - 현재 CPU에 의해 실행 중인 프로그램 (프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)를 할당 받아 프로세스가 된다.) - PCB를 가진 실행이 가능한 프로그램 - 프로세서가 할당하는 개체로서 디스패치가 가능한 단위이다. - 비동기(Asynchronous)적인 행위이다. - 목적 또는 결과에 따라 발생되는 사건들의 과정이다. - 운영체제가 관리하는 실행 단위이다. 1. 프로세스의 상태 전이 프로세스가 시스템 내에 존재하는 동안 프로세스의 상태 변화 프로세스 상태① N..
-
OS?학교 수업/OS 2020. 5. 2. 23:49
Operating System 운영체제(Operating System) : - 제한된 컴퓨터 시스템의 자원을 효율적으로 관리&운영함으로써, 사용자에게 최대의 편리성을 제공하고자 하는 인간과 컴퓨터 사이의 인터페이스를 위한 시스템 소프트웨어- 운영체제는 커널모드(kernel mode)와 사용자모드(user mode)로 나뉘어 구동된다. 커널모드 : 운영체제가 CPU의 제어권을 가지고 운영 체제 코드를 실행하는 모드모든 종류의 명령을 다 실행 가능CPU 내부에 모드비트(mode bit)가 0 사용자모드 : 일반 사용자 프로그램이 실행되며 제한적인 명령만을 수행 모드비트(mode bit)가 1 -> 시스템의 중요한 영향을 미치는 연산은 커널 모드에서만 실행 가능하게 함으로써 하드웨어의 보안 유지 - 운영체제 ..
-
TCP/IP 4계층?학교 수업/네트워크 2020. 4. 30. 17:26
TCP/IP protocol suite - 개념 : OSI 7계층보다 먼저 개발된 네트워크 모델, 4계층으로 구성 OSI 7계층은 네트워크의 표준이 되기는 하지만, 네트워크가 OSI를 이용해 실제적으로 구현되는 예는 거의 없다. 실질적인 통신는 TCP/IP 프로토콜 모델을 기반으로 구현된다. - 각 계층별 설명(전 포스팅에서 설명한 OSI계층별 설명과 동일, 다른 점은 몇 개의 계층이 합쳐져 있다는 점)1. 데이터링크계층 - OSI 7계층에서 물리계층과 데이터링크 계층에 해당 - 하드웨어적인 요소와 관련되는 모든 것을 지원하는 계층 - 송신측 컴퓨터의 경우 상위 계층으로부터 전달받은 패킷에 물리적인 주소은 MAC 주소 정보를 가지고 있는 헤더를 추가하여 프레임을 만들고, 프레임을 하위계층인 물리 계층으로..
-
OSI 7계층?학교 수업/네트워크 2020. 4. 29. 17:51
OSI(Open systems innterconnection) - 개념 : 국제표준화기구(ISO)에서 개발한 모델, 일반적으로 OSI 7계층 모형이라고 한다. 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것. -> 즉, 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것. Protocl 프로토콜? 컴퓨터와 네트워크 기기가 상호 간에 통신하기 위한 규칙 - 계층 분류의 장점 1. 단순함공통된 기능을 하는 계층끼리 묶여있고 다른 기능을 하는 것들 끼리는 나뉘어져 있으므로 각각에 대해 설계하기 용이하고 유지 보수가 쉽고 간편 2. 유연성 각 층에 대한 수정 및 향상이 필요할 때 다른 계층과 별개로 해당 계층에 대해서만 수정 및 향상을 진행할 수 있음 - 계층 분류의 단점 많은 계층들로 인..
-
네크워크란?학교 수업/네트워크 2020. 4. 29. 17:15
네트워크(Network) - 개념 : 정보 전달을 위해 두 대 이상의 기기를 연결해, 서로 통신할 수 있게 해주는 것 - 네트워크 호스트(network host) : 네트워크에 연결된 장치 client(정보를 요청하는 쪽), server(요청 받는 쪽) - 네트워크랑 네트워크를 연결하는 것을 인터넷(internet) 이라 한다. - 네크워크랑 네트워크를 연결시켜 주는 장비를 라우터(router) 라고 한다. - 네트워크는 호스트끼리 데이터 전달 방식에 따라 두 가지로 나뉜다.1. 회선 교환 (Circuit switching) 방식 네트워크두명의 클라이언트가 하나의 링크를 공유(연결확립)하여 데이터를 주고받는다. 독점을 하고 있기 때문에 두 클라이언트가 통신이 끝나기 전까지 아무도 접근하지 못한다. 주로 ..
-
이상현상 & 정규화?학교 수업/데이터베이스 2020. 4. 26. 17:52
이상현상(Anomaly) - 개념: 릴레이션 조작 시 불필요한 데이터의 중복으로 발생하는 예기치 않은 현상 - 종류① 삽입 이상 : 데이터 삽입 시 원하지 않는 값이 함께 삽입되는 현상② 삭제 이상 : 한 튜플 삭제 시 원하지 않는 값이 연쇄 삭제되는 현상③ 갱신 이상 : 중복 튜플의 속성값을 갱신 시 일부 튜플의 속성값만 변경되는 현상 정규화(normalization) - 개념: 잘못 설계한 관계형 데이터베이스를 더 작은 속성 집합으로 분해하여 바람직하게 만드는 과정 즉, 이상 현상이 제거된 릴레이션으로 만들어 과는 과정 - 목적① 어떤 릴레이션이라도 데이터베이스 내에서 표현 가능하도록 만듬② 릴레이션에서 바람직하지 않은 삽입, 삭제, 갱신이상이 발생하지 않도록 함③ 보다 간단한 관계연산에 기초하여 검..
-
뷰?학교 수업/데이터베이스 2020. 4. 24. 17:07
뷰 (View) - 개념 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 자니는 가상 테이블(virtual table) - 특징① 저장장치 내에 물리적으로 구현되어 있지 않음② 필요한 데이터만 뷰로 정의해서 처리할 수 있기 때문에 관리가 용이하고 명령문이 간단해짐 (뷰를 이용한 검색 연산은 가능하지만 갱신 엽산은 많은 제약점 가짐)③ 데이터 보정 작업, 처리 과정 시험 등 임시적인 작업을 위한 용도로 활용 ④ 뷰는 다른 뷰를 가질 수 있음⑤ 뷰가 정의된 기본 테이블이나 뷰를 삭제하면 그 테이블이나 뷰를 기초로 정의된 다른 뷰도 자동으로 삭제 - 장&단점 - 뷰 정의 형식CREATE VIEW 뷰_이름 [(속성목록)] AS SELECT문; 뷰 이름 뒤..