728x90 반응형 IT210 5장 프로세스 동기화 프로세스 간 통신 프로세스 간 통신의 개념 프로세스 간 통신(IPC; Inter Process Communication)의 종류 공유 메모리나 공유 파일을 이용한 통신 일정한 메모리 영역이나 파일을 공유하고 이를 통해 데이터를 주고받음 데이터를 주고받는 방법을 프로세스끼리 알아서 결정해야 하므로 가장 원시적인 방식 파이프를 이용한 통신 프로세스 간 통신을 위해 운영체제가 제공하는 통신 기법 예) fork()로 만들어진 부모-자식 간 통신에 파이프 사용 소켓을 이용한 통신 네트워크로 연결된 컴퓨터에서 데이터를 주고받기 위한 통신 기법 소켓 방식은 초기화할 내용도 많고 시스템 자원도 많이 사용하므로 같은 컴퓨터 내에서 소켓으로 통신하는 것은 비효율적 프로세스 간 통신의 분류 통신 방향에 따른 분류 양방향 통.. 2024. 1. 10. 4장 CPU 스케줄링 스케줄링의 개요 CPU 스케줄링 고수준 스케줄링(high level scheduling) 시스템 내의 전체 작업 수를 조절하는 것 사용자의 실행은 막지 않는다. 어떤 작업을 시스템이 받아들일지 또는 거부할지를 결정 시스템 내에서 동시에 실행 가능한 프로세스의 총 개수가 정해짐 장기 스케줄링(long-term scheduling), 작업 스케줄링(job scheduling), 승인 스케줄링(admission scheduling)이라고도 함 중간 수준 스케줄링(middle level scheduling) 중지(suspend)와 활성화(active)로 전체 시스템의 활성화된 프로세스 수를 조절 하여 과부하 막음 일부 프로세스를 중지 상태로 옮겨 나머지 프로세스가 원만히 작동하도록 지원 저수준 스케줄링이 원만하.. 2024. 1. 10. 3장 프로세스와 스레드 프로세스의 개요 프로세스의 개념 프로그램 저장장치에 저장되어 있는 정적인 상태 프로세스 실행을 위해 메모리에 올라온 동적인 상태 다양한 정의가 가능하나 가장 일반적인 정의는 “실행 중인 프로그램” 메모리에 적재되어 운영체제의 제어를 받는 상태. 프로세스가 사용하고 있는 메모리 영역 (자신의 주소 공간)이 존재함을 의미. 운영체제로부터 프로세스 제어 블록을 얻는다는 뜻. 프로그램에서 프로세스로의 전환 프로세스 제어 블록Process Control Block, PCB 운영체제가 해당 프로세스를 위해 관리하는 자료 구조 프로세스 제어 블록에 있는 대표적인 세 가지 정보 프로세스 구분자 : 각 프로세스를 구분하는 구분자 메모리 관련 정보 : 프로세스의 메모리 위치 정보 각종 중간값 : 프로세스가 사용했던 중간값.. 2024. 1. 10. 2장 컴퓨터의 구조와 성능 향상 컴퓨터의 기본 구성 하드웨어 구성 컴퓨터의 구성 필수장치: 중앙처리장치, 메인메모리(대부분의 작업이 이루어 짐) 주변장치: 입력장치, 출력장치, 저장장치 용어 통일 메인메모리 → 메모리 보조저장장치 → 저장장치 중앙처리장치 → CPU CPU와 메모리 CPU : 명령어를 해석하여 실행하는 장치로 인간으로 치면 두뇌에 해당 메모리 작업에 필요한 프로그램과 데이터를 저장하는 장소 바이트 단위로 분할되어 있으며 분할 공간마다 주소로 구분 입출력장치 입력장치 : 외부의 데이터를 컴퓨터에 입력하는 장치 출력장치 : 컴퓨터에서 처리한 결과를 사용자가 원하는 형태로 출력하는 장치 저장장치 메모리보다 느리지만 저렴하고 용량이 큼 전원의 온·오프와 상관없이 데이터를 영구적으로 저장 느린 저장장치를 사용하는 이유는 저장 용.. 2024. 1. 10. 1장 운영체제의 개요 운영체제 소개 일상생활 속의 운영체제 운영체제 일반 컴퓨터, 노트북, 스마트폰의 전원을 켜먼 가장 먼저 만나게 되는 소프트웨어 컴퓨터 관리를 위한 기본적은 규칙과 절차를 규정하여 컴퓨터 내의 모든 하드웨어(컴퓨터 자원)와 응용 프로그램을 관리 ex) pc 운용체제(윈도우, Mac OS, 유닉스, 리눅스 등), 모바일 운영체제(iOS, 안드로이드 등) 임베디드 운영체제 CPU 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제 임베디드 운영체제가 있는 기계는 기능을 계속 향상할 수 있음 업그레이드가 가능하다 : 스마트폰처럼! 요즘은 냉장고에서 노리고 있음 운영체제의 정의 응용 프로그램이나 사용자에게 컴퓨터 자원을 사용할 수 있는 인터페이스를 제공, 그 결과를 돌려주는 시스템 소프트웨어 응용 .. 2024. 1. 10. 코딩 테스트 합격자 되기 - 1주차 03 알고리즘 효율 분석 알고리즘 선택의 기준 : 시간복잡도 시간복잡도란? 알고리즘의 성능을 나타내는 지표, 입력 크기에 대한 연산 횟수의 상한 의미 -> 낮으면 낮을수록 좋다! 1차원 배열에서 예시 최선 : 1회 비교 최악 : 배열의 개수만큼 비교 알고리즘 수행 시간 측정 방법 절대 시간 측정 방법이 있지만 코테에서는 추천하지 않음!! (프로그램을 실행하는 환경에 따라 달라질 수 있음!) 시간 복잡도 측정 결과에 따라 최선, 보통, 최악으로 나뉨, 입력 크기에 따른 연산 횟수의 추이를 활용해서 시간 복잡도를 표현하는 방식을 점근적 표기법이라고 함 빅오 표기법 - 점근적 표기법 중 상한선 활용 방법 - 연산 횟수가 f(x)일 때 함수의 최고차항만 남기고 차수를 지워 O(g(x))와 같이 표기 - 그래프를.. 2024. 1. 6. 이전 1 ··· 24 25 26 27 28 29 30 ··· 35 다음 728x90 반응형