운영체제 운영체제 - 동기와 비동기 : 데이터를 받는 방식 동시에 일어난다는 뜻으로 요청과 결과가 동시에 일어난다는 약속이다. 요청을 하면 시간이 얼마나 걸리는지 상관없이 그 자리에서 결과가 나와야 한다. (요청후→응답받고→다음동작실행) 노드와 노드 사이의 작업처리단위를 동시에 맞추겠다. 장점:설계과 매우 간단하고 직관적이다. 단점:결과가 주어질때까지 아무일도 하지못하고 대기해야한다. 동시에 일어나지않는다는 뜻으로 요청과 결과... CS운영체제CS 비동기 병행 실행 복수 개의 프로세스나 쓰레드가 동일한 데이터를 동시에 접근하는 경우, 접근 순서에 따라 실행결과가 달라질 수 있는 상황 두 개이상의 쓰레드가 같은 데이터를 동시에 접근할 때 문제점 동시 접근 가능 데이터에 대한 상호배제적 접근 제어 한번에 하나의 쓰레드만 접근 가능 한번에 하나의 쓰레드만 임계 구역에 머물 수 있음 - 두 개 이상의 쓰레드(또는 프로세스)가 동시에 임계 구역에 있어서는 안됨 ... 운영체제CSOSCS 교착상태와 무기한 연기 자원 경쟁 교착 상태 자원 할당 및 요구 관계 선점 자원 비선점 자원 공유 가능 자원 공유 불가 자원 프로세스가 자원을 사용할 수는 있지만, 자원 할당 스케줄링 정책 때문에 계속 대기해야 하는 상황 운영체제의 편중된 자원 할당 정책 때문에 발생 교착상태 배제 무기한 연기 상태 배제 - 오랫동안 대기한 프로세스가 새로 도착하는 다른 모든 프로세스보다 우선순위가 높아져 먼저 자원 확보 한번에 한... 운영체제CSOSCS 프로세서 스케줄링 선점 스케줄링 어떤 프로세스가 프로세서(CPU) 사용을 위해 경쟁할 수 있는지 결정 선점 스케줄링 우선순위가 낮은 프로세스가 우선순위가 높은 프로세스를 대기시킬 가능성 정적 우선순위 방법에 비해 높은 오버헤드 최단작업 우선 스케줄링 우선순위 스케줄링 각 프로세스에 일정 크기의 CPU 시간 할당 선점 스케줄링 최단시간 우선 스케줄링 대기 시간과 처리 시간을 고려하여 우선순위 결정 도착하는 프로... 운영체제CSOSCS 시스템 메모리 크기 구하기(BIOS) 현재까지의 OS 모습이다. 32비트 보호모드에서 IA-32e(64비트)모드로 넘어갈 준비를 하고 있다. 메모리의 크기를 구하는 코드가 책에서는 직접 접근하여 값을 기록하는 식으로 설명이 되있었는데, 이 방법이 마음에 안들었다. cpu-z 같은 프로그램에서는 메모리가 몇번째 슬롯에 꽃혔는지도 알 수 있는데 이런 방법은 너무 별로라고 생각했다. 바이오스 인터럽트로 구하기 가장 간편한 방법이다. ... 운영체제OSOS 2022년 4월 3일 위는 제가 작성한 해답 코드인데, 우선 넘어온 문자열이 올바른 괄호 문자열인지 검사하는 함수를 만들고, 문제에서 주어진 문자열을 바꿔가며 검사하는 방식으로 해결하였습니다. 문자열을 검사하는 함수 부분을 반복적으로 검사하여 replace함수를 통해 기본 단위의 괄호를 전부 제거하는 방식 으로 구현한 부분이 인상깊었습니다. 또한 문자열을 왼쪽으로 한칸씩 shift하는 방식도 deque의 rota... 데이터베이스운영체제알고리즘데이터베이스 프로세스(3) 프로세스 생성 2. 사용자의 로그인 후 사용자와 대화를 위한 프로세스 생성 5. 사용자 응용프로그램이 시스템 호출로 새 프로세스 생성 프로세스 생성 과정 기존에 있는 프로세스가 다른 프로세스를 생성! 프로세스를 복사하는 시스템 콜을 통해서 프로세스 생성 Unix 계열의 OS는 시스템이 부팅할 때 0번 프로세스(init)만 자체적으로 생성 fork() 시스템 콜 int pid = fork();... 대학교강의운영체제대학교강의 디스크 스케쥴링 이름에서 알 수 있듯이 가장 먼저 도착한 요청을 가장 먼저 처리한다. 현재 위치에서부터 Seek Time이 가장 짧은 요청을 먼저 처리한다. 현재 53부터 거리가 가장 짧은 요청을 먼저 처리하므로, 총 이동 거리는 236 Cylinders이다. 가령, SSTF은 처음에 53번에서 바로 65번으로 이동하는데, 만약 53번에서 37번으로 이동한 후 SSTF를 수행하면 208 Cylinders의 ... 운영체제OSOS [운영체제] 3. Processes Process : A program in execution program, process, processor 혼용해서 사용하기도 (+) processor : 프로세싱하는 주체 (CPU) OS가 프로세스 관리 하는 법 프로그램 실행 -> Disk(하드디스크)에서 메모리로 프로그램 올림 (위의 구조) OS는 PCB(Process Control Block)으로 프로세스 관련 정보를 struct(구... 운영체제2021.102021.10 Process Management (OS강의 4주차) 부모 프로세스(Parent process)가 자식 프로세스(children process) 생성 부모와 자식이 모든 자원을 공유하는 모델 부모와 자식은 공존하며 수행되는 모델 자식이 종료(terminate)될 때까지 부모가 기다리는(wait) 모델 fork() 시스템 콜이 새로운 프로세스를 생성 fork 다음에 이어지는 exec() 시스템 콜을 통해 새로운 프로그램을 메모리에 올림 부모가 종... 운영체제OSOS 05. 프로세스 간 통신 프로세스 간 통신: 서로 다른 프로세스 간의 데이터가 공유(영향을 주고 받음)될 때 필요한 메커니즘 혹은 그런 행위 1. Shared-Memory 프로듀서 프로세스와 컨슈머 프로세스는 동시에 실행됨 프로듀서 프로세스는 버퍼에 데이터를 채우고 컨슈머 프로세서는 버퍼를 비움 프로듀서 프로세스의 메모리에 컨슈머 프로세스가 접근하게 하거나 컨슈머 프로세스의 메모리에 프로듀서 프로세스가 접근할 수 있... 운영체제인프런운영체제 2. 프로세스 프로그램 vs 프로세스 프로그램 = 파일 시스템에 존재하는 실행파일 프로세스 = 현재 실행중인 프로그램. fork( ) System Call Time sharing 수많은 가상 cpu가 존재하는 것처럼 보이는 환상. Process State running 상태 - 프로세서 위에서 실행중인 상태 ready 상태 - run하기 준비중인 상태 blocked 상태 - io같은 상황때문에 잠깐 blo... 운영체제운영체제 [운영체제] 동시성 제어의 고전적 문제들 생산자의 경우 데이터를 생성하면 Buffer에 저장하는데 이 때 저장할 Buffer 공간이 없을 수 있는 문제가 발생 할 수 있다. 소비자의 경우 데이터가 필요 할 때 Buffer에서 데이터를 가져오는데 , 이 때 가져올 데이터가 Buffer에 없는 문제가 발생 할 수 있다. 해결방법은 생산자-소비자 협동으로 세마포어를 사용하여 버퍼를 동기화 시키는 것이다. 생산자 프로세스 소비자 프로세스 ... 운영체제운영체제 [운영체제] 메모리 (Memory) CPU가 직접 접근할 수 있는 기억 장치 메모리 보호나 캐시 관리 등 CPU가 메모리에 접근하는 것을 총 관리해주는 하드웨어 가상 메모리 주소 -> 실제 메모리 주소로 변환 MMU의 메모리 보호 프로세스는 독립적인 메모리 공간을 가져야 되고, 자신의 공간만 접근해야 한다. 따라서 한 프로세스에게 합법적인 주소 영역을 설정하고, 잘못된 접근이 오면 trap을 발생시키며 보호한다. base와 l... 운영체제운영체제 운영체제_10 Bounded-buffer Problem (Producer-Consumer Problem) Readers and Writers Problem Dining-Philosophers Problem Bounded-buffer Problem 유한한 버퍼의 크기 Producer 공유데이터에 만들어서 버퍼에 집어 넣음 (빈 버퍼가 있으면) 공유버퍼 전체에 lock lock 해제 유한한 크기때문에 생기는 ... 운영체제monitormonitor 텍스트 에디터, vim 2 슬래쉬를 입력하면 명령 모드로 전환 됩니다. 이때, 해당 단어가 있는 다른 줄로 이동하고 싶으면 소문자 n을 누르면 됩니다. 텍스트 치환은 콜론을 통해 명령 모드로 진입 한 후, s(substitute)를 누르면 됩니다. 그 다음 슬래쉬를 두 개 적고 그 사이에 바꾸고 싶은 단어를 넣으면 됩니다. 교체를 원하면 y를 누르면 됩니다. 반대로, 달러($)를 누르면 커서가 줄의 마지막 칸으로 이동... 운영체제우분투커맨드유닉스clivimcli
운영체제 - 동기와 비동기 : 데이터를 받는 방식 동시에 일어난다는 뜻으로 요청과 결과가 동시에 일어난다는 약속이다. 요청을 하면 시간이 얼마나 걸리는지 상관없이 그 자리에서 결과가 나와야 한다. (요청후→응답받고→다음동작실행) 노드와 노드 사이의 작업처리단위를 동시에 맞추겠다. 장점:설계과 매우 간단하고 직관적이다. 단점:결과가 주어질때까지 아무일도 하지못하고 대기해야한다. 동시에 일어나지않는다는 뜻으로 요청과 결과... CS운영체제CS 비동기 병행 실행 복수 개의 프로세스나 쓰레드가 동일한 데이터를 동시에 접근하는 경우, 접근 순서에 따라 실행결과가 달라질 수 있는 상황 두 개이상의 쓰레드가 같은 데이터를 동시에 접근할 때 문제점 동시 접근 가능 데이터에 대한 상호배제적 접근 제어 한번에 하나의 쓰레드만 접근 가능 한번에 하나의 쓰레드만 임계 구역에 머물 수 있음 - 두 개 이상의 쓰레드(또는 프로세스)가 동시에 임계 구역에 있어서는 안됨 ... 운영체제CSOSCS 교착상태와 무기한 연기 자원 경쟁 교착 상태 자원 할당 및 요구 관계 선점 자원 비선점 자원 공유 가능 자원 공유 불가 자원 프로세스가 자원을 사용할 수는 있지만, 자원 할당 스케줄링 정책 때문에 계속 대기해야 하는 상황 운영체제의 편중된 자원 할당 정책 때문에 발생 교착상태 배제 무기한 연기 상태 배제 - 오랫동안 대기한 프로세스가 새로 도착하는 다른 모든 프로세스보다 우선순위가 높아져 먼저 자원 확보 한번에 한... 운영체제CSOSCS 프로세서 스케줄링 선점 스케줄링 어떤 프로세스가 프로세서(CPU) 사용을 위해 경쟁할 수 있는지 결정 선점 스케줄링 우선순위가 낮은 프로세스가 우선순위가 높은 프로세스를 대기시킬 가능성 정적 우선순위 방법에 비해 높은 오버헤드 최단작업 우선 스케줄링 우선순위 스케줄링 각 프로세스에 일정 크기의 CPU 시간 할당 선점 스케줄링 최단시간 우선 스케줄링 대기 시간과 처리 시간을 고려하여 우선순위 결정 도착하는 프로... 운영체제CSOSCS 시스템 메모리 크기 구하기(BIOS) 현재까지의 OS 모습이다. 32비트 보호모드에서 IA-32e(64비트)모드로 넘어갈 준비를 하고 있다. 메모리의 크기를 구하는 코드가 책에서는 직접 접근하여 값을 기록하는 식으로 설명이 되있었는데, 이 방법이 마음에 안들었다. cpu-z 같은 프로그램에서는 메모리가 몇번째 슬롯에 꽃혔는지도 알 수 있는데 이런 방법은 너무 별로라고 생각했다. 바이오스 인터럽트로 구하기 가장 간편한 방법이다. ... 운영체제OSOS 2022년 4월 3일 위는 제가 작성한 해답 코드인데, 우선 넘어온 문자열이 올바른 괄호 문자열인지 검사하는 함수를 만들고, 문제에서 주어진 문자열을 바꿔가며 검사하는 방식으로 해결하였습니다. 문자열을 검사하는 함수 부분을 반복적으로 검사하여 replace함수를 통해 기본 단위의 괄호를 전부 제거하는 방식 으로 구현한 부분이 인상깊었습니다. 또한 문자열을 왼쪽으로 한칸씩 shift하는 방식도 deque의 rota... 데이터베이스운영체제알고리즘데이터베이스 프로세스(3) 프로세스 생성 2. 사용자의 로그인 후 사용자와 대화를 위한 프로세스 생성 5. 사용자 응용프로그램이 시스템 호출로 새 프로세스 생성 프로세스 생성 과정 기존에 있는 프로세스가 다른 프로세스를 생성! 프로세스를 복사하는 시스템 콜을 통해서 프로세스 생성 Unix 계열의 OS는 시스템이 부팅할 때 0번 프로세스(init)만 자체적으로 생성 fork() 시스템 콜 int pid = fork();... 대학교강의운영체제대학교강의 디스크 스케쥴링 이름에서 알 수 있듯이 가장 먼저 도착한 요청을 가장 먼저 처리한다. 현재 위치에서부터 Seek Time이 가장 짧은 요청을 먼저 처리한다. 현재 53부터 거리가 가장 짧은 요청을 먼저 처리하므로, 총 이동 거리는 236 Cylinders이다. 가령, SSTF은 처음에 53번에서 바로 65번으로 이동하는데, 만약 53번에서 37번으로 이동한 후 SSTF를 수행하면 208 Cylinders의 ... 운영체제OSOS [운영체제] 3. Processes Process : A program in execution program, process, processor 혼용해서 사용하기도 (+) processor : 프로세싱하는 주체 (CPU) OS가 프로세스 관리 하는 법 프로그램 실행 -> Disk(하드디스크)에서 메모리로 프로그램 올림 (위의 구조) OS는 PCB(Process Control Block)으로 프로세스 관련 정보를 struct(구... 운영체제2021.102021.10 Process Management (OS강의 4주차) 부모 프로세스(Parent process)가 자식 프로세스(children process) 생성 부모와 자식이 모든 자원을 공유하는 모델 부모와 자식은 공존하며 수행되는 모델 자식이 종료(terminate)될 때까지 부모가 기다리는(wait) 모델 fork() 시스템 콜이 새로운 프로세스를 생성 fork 다음에 이어지는 exec() 시스템 콜을 통해 새로운 프로그램을 메모리에 올림 부모가 종... 운영체제OSOS 05. 프로세스 간 통신 프로세스 간 통신: 서로 다른 프로세스 간의 데이터가 공유(영향을 주고 받음)될 때 필요한 메커니즘 혹은 그런 행위 1. Shared-Memory 프로듀서 프로세스와 컨슈머 프로세스는 동시에 실행됨 프로듀서 프로세스는 버퍼에 데이터를 채우고 컨슈머 프로세서는 버퍼를 비움 프로듀서 프로세스의 메모리에 컨슈머 프로세스가 접근하게 하거나 컨슈머 프로세스의 메모리에 프로듀서 프로세스가 접근할 수 있... 운영체제인프런운영체제 2. 프로세스 프로그램 vs 프로세스 프로그램 = 파일 시스템에 존재하는 실행파일 프로세스 = 현재 실행중인 프로그램. fork( ) System Call Time sharing 수많은 가상 cpu가 존재하는 것처럼 보이는 환상. Process State running 상태 - 프로세서 위에서 실행중인 상태 ready 상태 - run하기 준비중인 상태 blocked 상태 - io같은 상황때문에 잠깐 blo... 운영체제운영체제 [운영체제] 동시성 제어의 고전적 문제들 생산자의 경우 데이터를 생성하면 Buffer에 저장하는데 이 때 저장할 Buffer 공간이 없을 수 있는 문제가 발생 할 수 있다. 소비자의 경우 데이터가 필요 할 때 Buffer에서 데이터를 가져오는데 , 이 때 가져올 데이터가 Buffer에 없는 문제가 발생 할 수 있다. 해결방법은 생산자-소비자 협동으로 세마포어를 사용하여 버퍼를 동기화 시키는 것이다. 생산자 프로세스 소비자 프로세스 ... 운영체제운영체제 [운영체제] 메모리 (Memory) CPU가 직접 접근할 수 있는 기억 장치 메모리 보호나 캐시 관리 등 CPU가 메모리에 접근하는 것을 총 관리해주는 하드웨어 가상 메모리 주소 -> 실제 메모리 주소로 변환 MMU의 메모리 보호 프로세스는 독립적인 메모리 공간을 가져야 되고, 자신의 공간만 접근해야 한다. 따라서 한 프로세스에게 합법적인 주소 영역을 설정하고, 잘못된 접근이 오면 trap을 발생시키며 보호한다. base와 l... 운영체제운영체제 운영체제_10 Bounded-buffer Problem (Producer-Consumer Problem) Readers and Writers Problem Dining-Philosophers Problem Bounded-buffer Problem 유한한 버퍼의 크기 Producer 공유데이터에 만들어서 버퍼에 집어 넣음 (빈 버퍼가 있으면) 공유버퍼 전체에 lock lock 해제 유한한 크기때문에 생기는 ... 운영체제monitormonitor 텍스트 에디터, vim 2 슬래쉬를 입력하면 명령 모드로 전환 됩니다. 이때, 해당 단어가 있는 다른 줄로 이동하고 싶으면 소문자 n을 누르면 됩니다. 텍스트 치환은 콜론을 통해 명령 모드로 진입 한 후, s(substitute)를 누르면 됩니다. 그 다음 슬래쉬를 두 개 적고 그 사이에 바꾸고 싶은 단어를 넣으면 됩니다. 교체를 원하면 y를 누르면 됩니다. 반대로, 달러($)를 누르면 커서가 줄의 마지막 칸으로 이동... 운영체제우분투커맨드유닉스clivimcli