본문 바로가기
Computer Science/정보처리기사

4장 프로그래밍 언어 활용 정리

by 하상원이야 2022. 5. 6.

OSI 7계층, TCP/IP 4계층 - 네트워크를 구성하는 표준 계층 중 하나

출처 - 나

ARP - IP 주소를 Mac으로 바꿈 // RARP - Mac 주소를 IP로 바꿈

 

쉘 : 명령어를 기계어로 변환해주는, 명령어 해석기 / 사용자와 운영체제가 소통할 수 있게 하는 interface

쉘의 종류 : bash, csh, sh, ksh, zsh, tc shell 등

 

소프트웨어의 모듈화 : 시스템 분해, 추상화하여 성능향상, 디버깅, 시험, 수정을 용이하게 함

모듈의 독립성 - 모듈 하나의 기능만 수행하고 과도한 상호작용을 배제

 

모듈화의 결합도 - 두 모듈간의 의존도 혹은 연관관계. 낮은 결합도를 추구, 오류를 타 모듈로 전파하는 것을 최소화

결합도의 강한 순서(강하면 안좋음) - 내용 > 공통 > 외부 > 제어 > 스탬프 > 자료 결합도

모듈화의 응집도 - 하나의 모듈 내부의 처리요소의 관계, 연관도

응집도의 강한 순서(강하면 좋음) - 기능 > 순차 > 교환 > 절차 > 시간 > 논리 > 우연 응집도

 

결합도(강한 순서부터)

내용 : 내부기능 그대로 참조 / 공통 : 공통 데이터 사용 / 외부 : 외부의 모듈이 다른모듈 데이터 참조/

제어 : 처리기능이 두 모듈에서 분리되어 설계/ 스탬프 : 두 모듈이 동일한 자료 조회 / 자료 : 매개변수 사용(good)

 

응집도(강한 순서부터)

기능 : 모듈 내부 기능 요소 단일 문제 수행 / 순차 : 출력값->입력값 사용함 / 교환 : 입출력 동일, 다른 기능 /

절차 : 다수 관련 기능을 순차적으로 수행 / 시간 : 특정 시간의 처리되는 기능 / 논리 : 유사한 성격이나 형태

우연적 : 모듈 내부 구성요소가 관련이 없음

 

프로세스와 스레드

프로세스 - 컴퓨터에서 연속적으로 실행되고 있는 프로그램, 최소 1개의 스레드를 보유한다

스레드 - 프로세스 내의 실행되는 여러 흐름 단위

--> 프로세스는 code, data, heap, stack으로 구성되어있고,

     stack에는 각 스레드가 있음며 여러 stack, 즉 여러 스레드가 존재할 수 있다.

 

교착상태(Deadlock) - 한정된 자원을 여러곳에서 사용하려고 할 때 발생하는 상태

교착상태의 발동 조건★ ( 한 시스템 내에 4가지 조건이 모두 성립해야 발생 )

1. 상호배제 - 자원은 한번에 한 프로세스만 사용

2. 점유대기 - 최소한 하나를 점유하고, 다른 자원을 추가 점유하기 위한 대기 존재

3. 비선점 - 다른 프로세스 할당 자원은 뺏을 수 없다

4. 순환대기 - 순서대로 자원을 대기해야 한다

 

교착상태 처리★

1. 예방(prevention) - 발동 조건 1개를 미리 부정해놓음, 낭비가 심함

2. 회피(avoidance) - 발생시 피함 ex. 은행원 알고리즘

3. 탐지(detection) - 자원 할당 그래프 사용

4. 회복(recovery) - 교착상태 중지, 모든 프로그램 1개씩 중지

 

운영체제의 스케줄링

1. 선점 스케줄링

SRT - 최단 잔여시간을 우선으로 함. 선점형 SJF. 진행중이여도 sleep하고 짧은 순서대로 돌림

◎ RR(라운드로빈) - 시분할 시스템, 오버헤드 발생 가능, 똑같이 분할해서 돌리고 돌리고 돌림

2. 비선점 스케줄링★

◎ FCFS, FIFO(같은말임) - 도착한 순서에 따라 실행. 공정하지만 중요도에 따르지 않음

◎ SJF - 실행시간이 가장 짧은 프로세스 먼저 실행, 기아 상태 발생 가능

◎ HRN - SJF의 보완 버전. 우선순위를 사용함 공식 : ( 대기시간 + 서비스(실행)시간 ) / 서비스 시간 // (높을수록 중요!)

 

평균 반환시간 : ( 완료 시간 - 도착시간 )/작업의 수

평균 대기시간 : 기다린 시간/ 작업의 수

 

선입선출(FIFO) 알고리즘 - 프레임을 정하고, 가장 먼저 들어온 페이지를 교체한다. 세 페이지를 카운트

LRU 알고리즘 - 오랫동안 사용 안한 페이지 교체

LFU 알고리즘 - 빈도가 적은 페이지 교체

 

IPv4 : 32비트, 네트워크/ 호스트 2level

IPv6 : 128비트, 보안, 패킷 확장, 헤더 확장 가능

 

프로세스 상태 전이도

반응형

댓글