본문 바로가기

방송대

3강. 프로세스 스케줄링 스케줄링 : 여러 가지 작업의 처리순서 결정 프로세스 스케줄링: 주어진 프로세스 처리 순서를 결정 스케줄링 단계 상위단계 : 작업 큐에 있는 작업을 선택 해 프로세스를 생성한 후 프로세스 준비 큐에 전달 중간단계 : 프로세스를 일시적으로 메모리에서 제거해 중지시키거나 중지된 프로세스에 다시 메모리 할당하여 활성화. 하위단계 : 준비 큐에 있는 프로세스 선택 해 사용 가능한 CPU에 할당 스케줄링 목표 1. 공정성 : 모든 프로세스가 적정 수준에서 CPU작업을 할 수 있게 하는 것 2. 균형성 : 시스템의 자원들이 충분히 활용될 수 있게 하는 것 스케줄링 정책 1. 선점 스케줄링 정책 : 실행 중인 프로세스에 인터럽트를 걸어 사용하지 못하게 한 후 뺏어서 다른 프로세스에 CPU 할당하는 방식. 높은 우선순.. 더보기
3강. 프로세스 스케줄 스케줄링 : 여러 가지 작업 중 처리 순서를 결정하는 것 ex) 프로세스 스케줄링, 디스크 스케줄링 1. 프로세스 스케줄링 : 주어진 프로세스가 여러 개인 경우, 프로세스의 처리 순서를 결정 작업큐에 시스템에 작업들이 들어 옴 -> 상위단계 스케줄링: 요청이 들어온 작업을 자원을 효율적으로 이용하게 스케줄링함 -> 하위단계 스케줄링: cpu할당 기다리면서 각 프로세스를 cpu에 할당하는 것 -> 중간단계 스케줄링: cpu에 너무 많은 부하가 있을 때 잠시 프로세스를 대기시켜놓는 것 하위단계 스케줄링: - 준비 큐에 있는 프로세스를 선택해 사용 가능한 cpu에 할당(디스패치) 스케줄링 목표 - 공정성 : 모든 프로세스가 적정 수준에서 cpu 작업을 할 수 있게 함 - 균형 : 시스템 자원이 충분히 활용될 .. 더보기
4강. 파이썬 시작하기 1. 프로그래밍 기초 1-1. 숫자 정수(integer) : 소수점이 없는 숫자 실수(float point): 소수점이 포함되는 숫자 1-2. 문자 유니코드 기반 문자 또는 문자열 *유니코드: 전 세계의 모든 문자들을 표현하기 위해 가변 길이의 4byte로 문자를 표현하는 코드 체계 문자는 " " , ' ' 를 사용하여 표현 1-3. 기본연산자와 표현식 표현식은 파이썬 인터프리터에 의해 자동 계산 1-4. 함수 특정 작업을 하는 코드(명령어)의 집합 1-5. 들여쓰기 파이썬에서는 코드의 논리적 집합인 블록을 표현! 들여쓰기는 스페이스 4칸 권장 1-6. 문서화 주석사용 -> 가독성 증대, 개발 속도 향상, 유지보수 용이 한라인 # 여러라인 """내용""" 혹은 '''내용''' 3개를 연달아 사용 2. 데.. 더보기
3강. 파이썬의 이해 1. 파이썬의 개요 파이썬의 탄생 - 히도 판로쉼 1991년 개발 - 크리스마스에 할 거 없어서 만듦 - Monty Python's Flying Circus 를 따라 명명 - 쉘 스크립팅 언어로 개발 * 쉘(shell) : 사용자가 입력한 명령어를 해석해서 운영체제 내부의 커널에 전달하는 명령 해석기 창 - 다중 프로그래밍 패러다임 채용: 명령형, 절차적, 객체지향, 함수형 프로그래밍을 한 언어에서 모두 지원함 - 다목적 활용 : 응용 프로그램, 웹, 백앤드 개발, 사물 인터넷 분야 파이썬의 발전 과정 - 1999년 DARPA(국방부 연구소 같은 곳) 에 computer programming for everybody 제안 - 2000년 파이썬 2.0 출시(커뮤니티 통한 개발 체계 시작) - 2008년 파.. 더보기
7강. 정규화 1. 좋은 릴레이션과 나쁜 릴레이션 1-1. 나쁜 릴레이션의 예 데이터의 부분적인 중복 -> 저장에서 비효율적, 일관성 유지 어려움 갱신 이상 : - 삽입 이상 - 삭제 이상 - 수정 이상 1-2. 좋은 릴레이션의 개념 어떤 데이터를 효율적으로 저장할까? 릴레이션의 스키마가 얼마나 효율적으로 실세계를 반영하고 있는지 평가 고려 사항 - 한 릴레이션 내의 컬럼 간의 관계 분석 - 원하지 않는 데이터의 종속과 중복 제거 - 새로운 컬럼들이 데이터베이스에 추가될 때, 기존 컬럼과의 관계 수정을 최소화 2. 함수적 종속적 정의: 릴레이션 인스턴스(레코드)를 분석하여 속성들(컬럼들) 간의 연관관계를 표현한 것 3. 정규화 3-1. 정규화의 개념 정규형: 이상 현상을 최소화하도록 특정 조건을 갖춘 릴레이션의 형식 .. 더보기
1강. 기본 자료구조 목표: 알고리즘의 설계 및 분석 방법 습득 자료구조, 수학적 백그라운드, 문제에 대한 추상화 능력 및 통찰력이 필요! [과목 소개] 1. 알고리즘 소개 2. 분할정복 알고리즘 3. 동적 프로그램 알고리즘 4. 욕심쟁이 알고리즘 5. 정렬 알고리즘 6. 탐색 알고리즘 7. 근사 알고리즘 1. 알고리즘의 필요성 컴퓨터를 사용해서 문제를 해결하기 위함 알고리즘: 일련의 단계적인 처리 과정 2. 기본 자료구조 자료구조 : 컴퓨터에서 데이터 사이의 논리적 관계를 표현하고 조직화하는 방법 프로그램 자료가 많을 때는 자료의 이동이 부담 됨 1차원 배열 2차원 배열 3차원 배열 연결리스트 : 노드: 데이터, 링크(화살표)로 구성 논리적인 순서와 물리적인 순서가 같지 않음 데이터를 찾아가는 방식이 순차 접근임. 데이터가.. 더보기
2강. 프로세스, 쓰레드, 그 둘의 관계 1. 프로세스 : 실행 중인 프로그램 윈도우즈의 작업관리자 : 현재 내 PC에서 동작하는 프로세스의 정보를 알려줌 현재 사용하고 있는 프로세스가 얼만큼의 CPU, 메모리, 디스크, 네트워크을 사용하는지 나타냄 PID (프로세스 아이디) : 프로그램은 고유의 실행하는 동안 고유의 PID를 가짐 프로그램: 동작을 하지 않는 정적, 수동적 개체 프로세스: 동작을 하는 능동적 개체 프로세스는 운영체제로부터 자원(CPU, 메모리, 입출력장치, 파일 등)을 할당받아 동작(CPU가 프로세스의 명령을 실행) 운영체제(프로세스 관리자)가 해야할 일 - 프로세스 생성, 종료, 실행을 위한 스케줄링 작업, 상태관리 프로세스의 구성(2가지) 1. 메모리 구조 : - 프로그램 실행에 필요한 코드(프로그램 자체)와 - 데이터(프.. 더보기