[정보처리기사] 메티코드 강의 후기 :: 4강_프로그래밍 언어 활용

2024. 12. 22. 22:51메타코드/정보처리산업기사

 

 

이미지를 눌러 메타코드 가기


강의목차

 

 

 

 

이제 거의 끝나간다...정보처리기사 공부할 양이 방대한데 시험에 나오는 핵심만 빠르게 알려주어서 살았다.   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

강의 정리 및 필기

 

 

♣ 응용 SW 기초 기술 활용(운영체제)_part1

컴퓨터 하드웨어 구성요소 소개

 

CPU (요리사)

-중앙 처리 장치

-데이터를 처리하고 명령을 실행하는 역할

 

RAM (도마)

-실행중인 프로그램이 빠르게 접근할 수 있도록 데이터를 임시로 저장하는 공간

 

DISK (냉장고)

-데이터를 장기적으로 저장하는 공간

-필요한 데이터를 RAM으로 불러와 CPU가 처리

 

I/O Devicr 

-입출력 장치

-컴퓨터와 외부를 연결하는 모든 장치

-키보드, 마우스, 모니터, 프린터 등

 

운영체제

프로세스관리

-여러 프로그램들을 여러 사용자가 동시에 실행할 수 있도록 프로세스 관리

-자원의 현재 상태를 파악하고 자원 분배를 위한 스케줄링 담당

자원관리

-cpu,메모리 공간 기억장치 입출력장치 등의 자원을 효율적으로 관리

입출력관리

사용자 인터페이스 제공

-사용자가 컴츄터와 쉽게 상호작용할 수 있는 인터페이스 제공

 

제어프로그램 : 시스템 관리 및 하드웨어 제어

-감시 프로그램

-작업 제어 프로그램

-데이터 관리 프로그램

 

처리 프로그램 : 애플리케이션 실행 및 사용자 요구 처리

-언어 번역 프로그램

-서비스 프로그램

-문제 프로그램 :  사용자가 작성한 프로그램

 

운영체제의 구성요소

-운영체제는 하드웨어-소프트웨어 간 상호작용을 관리하는 커널과 사용자 인터페이스인 쉘로 이루어짐

 

커널

-운영체제의 핵심으로 하드웨어와 직접 상호작용하며 시스템의 모든 자원을 관리

-프로세스 생성과 종료를 관리

 

-사용자가 운영체제와 상호작용 할수 있도록 하는 명령어 해석기이자 인터페이스

-사용자가 명령어를 입력하면,이를 해석하고 실행하는 역할

 

유닉스

-멀티태스킹과 다중 사용자 환경을 지원하도록 설계된 운영 체제

유닉스의 특징

-상용 운영 체제

-특정 하드웨어에 종속되는 경우가 많음

 

리눅스

-유닉스를 바탕으로 개발한 무료 운영체제

리눅스의 특징

-무료

-다양한 하드웨어 플랫폼

 

운영체제의 기본 명령어

시스템관련

-uname

파일 및 디렉토리 관련

-ls

-cd

-rm

-cat : 파일의 내용 출력

-chmod

프로세스 관련

-kill

-fork : 새로운 프로세스 생성

 

메모리 자원관리

-메모리를 효율적으로 사용하고, 프로세스들이 필요한 메모리를 적절히 할당받아 실행될 수 있도록 관리

 

메모리 자원 관리 비법

-반입 기법

--요구반입

--예상 반입

 

-배치 기법

--최초 적합

--최적적합

--최악적합

-할당 기법

--연속메로리할당

--분산메모리할당

-교체 기법

--분산 메모리 할당

 

단편화

-메모리가 작은 조각들로 나뉘어 필료한 메모리 공간을 할당하지 못하는 현상

내부단편화

-프로세스가 메모리 블록을 할당받았을 떼, 할당된 블록이 실제 필요한 크기보다 큰 경우 발생

외부단편화

-프로세스가 종료되어 메모리에서 해제된 후, 빈 블록들이 분산되어 연속된 메로리 공간을 만들지 못하는 경우

페이징 기법

-물리적 주소를 고정된 크기로 분할하는 기법

 

페이지 : 프로그램의 논리적(가상) 주소 공간을 동일 크기의블록으로 나눈 것

프레임 : 물리적 메모리를 페이지와 동일한 크기의블록으로 나눈 것

페이징 테이블 : 논리 주소를 물리 주소로 변환하는역할

개별 페이지는 페이징 테이블을 통해 순서에 관계없이 물리 공간에 있는 동일 크기의 프레임에 저장됨

페이지 크기 설정에 따라 효과 달라짐

 

세그멘테이션 기법

-코드데이터 스택 등 의미적으로 관련 있는 메모리 영역을 각각 독립된 세그먼트로 나눔

-각 세그먼트는 시작 주소와 길이로 정의되며 세그먼트 테이블을 활용해 물리적  주소를 계산

-논리적으로 의미 있는 단위로 메모리를 관리할 수 있으나 외부 단편화가 발생할 수 있음

 

페이지 교체 기법의 종류

-FIFO

-LRU

-LFU

-OPtimal

 

페이지결함

-프로그램이 메모리의 특정 페이지에 접근하려 할 때, 그 페이지가 현재 물리적 메모리에 로드되지 않은 상황

 

♣ 응용 SW 기초 기술 활용(운영체제)_part2

프로세스

-실행 중이 ㄴ프로그램의 동작 단위. CPU, 메모리 등의 자원을 할당 받아 작업을 수행

 

프로세스 제어 블록

- 운영체제가 프로세스를 관리하기 위해 사용하는 자료 구조

- 프로세스 식별자, 프로세스 상태 등의 정보로 구성됨

-프로세스의 상태를 관리하고 문맥 교환 시 프로세스의 상태를 저장하거나 복원하느 역할

 

프로세스 상태

- 프로세스가 실행되는 동안 시간에 따라 일련의 상태 변화가 발생함

-생성,분비,대기,실행,종료의 5가지 단계로 구성

-프로세스가 준비 상태에서 자원이 할당되어 실행 상태로 변화하는 것을 디스패치라고 함

-디스패치 과정에서 현재 실행 중인 프로세스의 상태를 저장하고, 다른 프로세스의 상태를 복원하여 cPU가 다른 작업을 수행하도록 전환하는 문맥 교환이 발생

 

스레드

-프로세스 내에서 실행되는 가장 작은 실행 단위

 

스레드의 특징

- 한 개의 프로세스가 여러 개의 스레드를 가질 수 있음

-프로세스의 일부로서 한 프로세스의 자원을 공유하면서 동시에 여러작업을 수행할 수 있음

-스레드를 통해 운영체제의 성능과 응용 프로그램의처리율이 향상될 수 있음

 

스레드의 종류

-생성 주체에 따라 커널 수중 스레드와 사용자 수준 스레드로 구분됨

 

 

스레싱

-프로세스들이 메모리보다 많은 페이지를 필요로 할 때 페이지 폴트가 자주 발생하여 시스템선은이 저하되는 현상

 

워킹 세트

-프로세스가 일정 시간동안 자주 참조하는 페이지들의집합

 

지역성

-프로세스가 실행되는 동안 메모리 접근이 특정 부분에 집중되는 경향

 

시간 지역성

-최근에 참조된 데이터나 명령어가 가까운 미래에 다시 참조된 가능성이 높은 경향

 

공간 지역성

-하나의 기억장소가 참조되면 그 근처의 기억 장소가 계속 참조되는 경향

 

프로세스 스케줄링

-운영체제가 여러 프로세스를 횽ㄱ적으로 처리하기 위해 CPU 사용에 대한 우선순위를 결정하는 방식

 

선점형 스케줄링

-현재 실행 중인 프로세스가 강제 중간되고 다른 프로세스가 CPU를 차지할 수 있는 방식

-SRT : 프로세스 중 남은 실행 시간이 가장 짧은 프로세스에 CPU를 할당

-Round Robin : 각 프로세스가 동일한 우선순위를 가지고 일정 시간동안 번갈아 가며 CPU를 할당

 

비선점형 스케줄링

-한 번 cpu를 점유한프로세스는 작업을 모두 끝낼 때까지 CPU를 독점하는 방식

-FIFS : 도착한 순서대로 프로세스를 처리

-SJF : 실행 시잔이 짧은순서대로 CPU에 할당

-HRN : 대기 시간이 긴 프로세스일 경우 우선순위가 높아짐

 

교착상태

-두 개 이상의 프로세스가 서로가 점유한 자원을 무한정 기다리며 프로세스가 진행되지 못하는 상태

 

교착 상태 발생 조건

- 상호배제

-점유와 대기

-환형 대기

-비선점

 

교착상태의 해결기법

-예방

-회피

-탐지

-회복

 

디스크 스케줄링

-하드디스크에 저장된 데이터를 읽거나 쓸 대, 디스크의 헤드가 움직이는 방식을 최적화하는 방법

 

강의간단요약및느낀점

 

지금까지 강의를 듣다보니 정보처리기사가 어떤 내용을 다루는지 대강 알겠고 글을 보면 아는 내용인데 백지에 쓰라고 하면 막막하다... 강의를 한 번 듣는 걸론 안되고 두번은 들어야 할 것 같다. 올해까지 두번 강의 듣기 아자아자!!!

 

 

이미지를 눌러 정보처리기사 공부하러 가기