분류 전체보기
-
OS의 process synchronization?학교 수업/OS 2020. 5. 5. 17:28
이전에는 OS의 프로세스 관리 법 중 프로세스 스케줄링에 대해 배웠다면지금은, 프로세스 동기화에대해 배워보자. Synchronization Synchronization(동기화)가 필요한 이유 병행 프로세스 : 두 개 이상의 프로세스가 동시에 실행 상태에 있는 것으로 병행성이 높아져 시스템 성능은 향상되지만 공유자원 선점을 위한 프로세스 간 경쟁현상*이 발생하게 된다. Race condition : 동시에 여러 개의 프로세스들끼리 하나의 자원을 두고 서로 경쟁하는 상황 자료의 일관성을 해치는 결과가 나타낼 수 있다. -> 이 문제를 해결하기 위해서는, 동기화가 필요하다 동기화(Synchronization)? 병행프로세스가 공유자원을 사용할 때, 프로세스 간 처리순서를 결정하는 방법 동기화 하는 방법(mut..
-
[SWEA] 2112. 보호필름문제 풀이 2020. 5. 4. 18:27
2212 보호필름 풀이)재귀 + 브루트 포스 문제였다. 필름 막 상태를 vector arr;에 저장해 놓았다.그리고 약품으로 막 상태를 바꾼다면 기존의 값을 알아놔야하기 때문에 처음에는vector temp =arr; 로 전체 상태를 저장해놓은 뒤,막 상태 바꾼 후 arr= temp; 로 돌려놓았는데 이렇게 하니 시간초과가 났다. 아무래도 백터 전체를 저장하고 돌려놓고 해서 그런듯 싶어 두번째로는 필름 막 상태 모두를 저장해놓지 않고,기존의 막 상태(행)만 저장해두고 vector temp = arr[i]; (i는 바꿀 막 인덱스)상태 바꾼 후 원래 막 상태로 바꿔주도록 했더니 arr[i] = temp;시간 초과가 나지 않고 통과했다. 시간초과가 나지 않게 사용한 방법은 위에서 설명한 거 말고 2가지가 더있..
-
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 -> 시스템의 중요한 영향을 미치는 연산은 커널 모드에서만 실행 가능하게 함으로써 하드웨어의 보안 유지 - 운영체제 ..
-
[SWEA]2105 디저트 까페문제 풀이 2020. 5. 1. 21:42
2105 디저트 까페 풀이)dfs를 이용해서 푼 문제이다. 최대한 중복되는 사각형 모양을 거르기 위해 두가지 방법을 사용했다.1. 맨왼쪽, 맨오른쪽, 맨아래쪽에서 시작하는 경우는 사각형을 이루지 못하므로 계산에서 제외한다.2. 사각형으로 움직일때, 무조건 오른쪽 아래부터 시작한다. 주의할 점출발점으로 돌아왔을때, 디저트의 수는 무조건 4개 이상이며 방향으로 제일 마지막 방향 상태여야한다. 코드) 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364#include #include using namespace std; int n;int map[21]..
-
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 주소 정보를 가지고 있는 헤더를 추가하여 프레임을 만들고, 프레임을 하위계층인 물리 계층으로..
-
[SWEA] 1949 등산로 조성문제 풀이 2020. 4. 29. 22:24
1949 등산로 조성 풀이)dfs를 이용해서 가능한 모든 경우를 다 살펴본 문제이다. 과정은 이러하다.1. 가장 지형이 높은 곳들의 위치를 저장해 둔다.2. 각 높은 곳들의 위치에서 dfs를 통해 등산로 길이를 구한다.3. 그 중 최고의 등산로 길이를 출력한다. dfs함수를 자세히 설명하면1) 현재 좌표값에서 상하좌우로 움직였을때 지도 범위내에 들어오는 지 확인2) 범위내에 들어온다면 이전에 지형을 깎아본 적이 있는 지 확인 2.1) 지형을 이미 깎아봤다면다음에 움직일 곳의 지형의 높이 확인현재 지형의 높이보다 작다면 → 이동작지 않다면 →이동 그만하고 지금까지의 등산로 길이 체크 2.2) 지형을 아직 깎아보지 않았다면다음에 움직일 곳의 지형의 높이를 확인현재 지형의 높이보다 작다면 → 이동작지 않다면 ..
-
OSI 7계층?학교 수업/네트워크 2020. 4. 29. 17:51
OSI(Open systems innterconnection) - 개념 : 국제표준화기구(ISO)에서 개발한 모델, 일반적으로 OSI 7계층 모형이라고 한다. 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것. -> 즉, 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것. Protocl 프로토콜? 컴퓨터와 네트워크 기기가 상호 간에 통신하기 위한 규칙 - 계층 분류의 장점 1. 단순함공통된 기능을 하는 계층끼리 묶여있고 다른 기능을 하는 것들 끼리는 나뉘어져 있으므로 각각에 대해 설계하기 용이하고 유지 보수가 쉽고 간편 2. 유연성 각 층에 대한 수정 및 향상이 필요할 때 다른 계층과 별개로 해당 계층에 대해서만 수정 및 향상을 진행할 수 있음 - 계층 분류의 단점 많은 계층들로 인..