1. 운영체제
: 사용자가 컴퓨터 하드웨어를 쉽게 사용할 수 잇도록 인터페이스를 제공해 주는 소프트웨어
- 사용자 편리성 제공 : 한정된 시스템 자원을 효과적으로 사용할 수 있도록 관리 및 운영
- 인터페이스 기능을 담당 : 컴퓨터 시스템과 사용자를 연결
- 스케줄링 담당 : 다중 사용자와 다중 응용 프로그램 환경 하에서 자원의 현재 상태를 파악하고 자원분배를 위한 스케줄링 담당
- 자원 관리 : CPU, 메모리 공간, 기억 장치, 입출력 장치의 등의 자원을 관리
- 제어 기능 : 입출력 장치와 사용자 프로그램 제어
1) 메모리 관리
- 반입 기법 : 주기억 장치에 적재할 당므 프로세스의 반입 시기 결정 (When)
- 배치 기법 : 디스크에 있는 프로세스를 주기억장치의 어느 위치에 젖아할 것인지 결정 (Where)
- 할당 기법 : 실행해야할 프로세스를 주기억장치에 어떤 방법으로 할당할 것인지 결정 (How)
- 교체 기법 : 재배치 기법으로 주 기억장치에 있는 프로세스 중 어떤 프로세스를 제거할 것인지 결정 (Who)
2. 메모리 관리
- 최초 적합 : 프로세스가 적재될 수 있는 가용공간 중에서 첫번째 분할에 할당
- 최적 적합 : 가용 공간 중 가장 크기가 비슷한 공간을 선택하여 프로세스 적재
- 최악 적합 : 프로세스 가용 공간들 중 가장 큰 공간에 할당
3. 프로레스 관리
- 생성 : 사용자에 의해 프로세스가 생성된 상태
- 준비 : CPU를 할당 받을 수 있는 상태
- 실행 : 프로세스가 CPU를 할당 받아 동작 중인 상태
- 대기 : 프로세스 실행 중 입출력 처리 등으로 CPU 양도하고 입출력 처리가 완료되기 까지 대기리스트에서 대기
- 완료 : 프로세스가 CPU를 할당 받아 주어진 시간 내에 완전히 수행을 종료한 상태
- 디스패치 : 준비상태 프로세스 중 선정하여 CPU할당
- 타이머 런 아웃 : CPU를 할당받은 프로세스는 지정 시간이 초과되면 스케줄러에 의해 PCB저장, CPU반납 후 준비
- 블록 발생 : 실행 프로세스가 타이머 런 아웃 전에 기타 사건이 발생하면 CPU 반납하고 대기 상태로 전이
- 웨이크 업 : 어느 순간에 입출력이 종료되면 대기 상태의 프로세스에게 입출력 종료를 알려주고 준비 상태로 전이
4. 프로세스 스케줄링 알고리즘
1) 선점형 스케줄링 알고리즘 : 하나의 프로세스가 CPU 차지 중일 때, 우선 순위가 높은 다른 프로세서가 CPU점유 뺏어감
- 라운드 로빈 : 프로세스는 같은 크기의 CPU시간을 할당, 균등한 CPU 점유시간, 시분할 시스템 사용, 프로세스가 할당된 시간 내에 완료 못하면 큐 리스트 가장 뒤로 보냄
- SRT : 가장 짧은 시간이 소요되는 프로세스를 먼저 수행하고, 남은 처리 시간이 더 짧은 프로세스가 준비되면 언제라도 선정됨, 짧은 수행시간 프로세스 우선 수행
- 다단계 큐 : 작업들을 여러 종류 그룹으로 분할, 여러개의 큐를 이용하여 상위 단계 작업에 의한 하위 단계 작업이 선점 당함, 독립된 스케줄링 큐
- 다단계 피드백 큐 : 프로세스의 특성에 따라 큐마다 서로 다른 CPU시간 할당부여
2) 비선점형 스케줄링 알고리즘 : 한 프로세스가 CPU점유하면 CPU반환시까지 다른 프로세스는 CPU 못뺏음
- 우선수위 : 프로세스별 우선 순위가 주어지고 우선순위에 따라 CPU할당, 동순위는 FCFS
- 기한부 : 작업들이 명시된 시간이나 기한 내에 완료되도록 계획, ㅁ여시된 시간 내 처리 보장
- FCFS : 프로세스사 대기 큐에 도착한 순서대로 CPU할당
- SJF : 프로세스가 도착하는 시점에 따라 그 다시 가장 작은 서비스 시간 갖는 프로세스가 종료시까지 CPU점유, 작업시간에 따라 불평등이 심해 기아 현상 발생가능성 높음
- HRN : 대기중인 프로세스 중 응답률이 젱리 높은 것 선택, 기아현상 최소화 기법
3) 프로세스 교착 상태 : 다중 프로세싱 환경에서 두 개 이상의 프로세스가 특정 자원 할당을 무한정 대기하는 상태
- 상호배제 : 프로세스가 베타적으로 자원을 점유해 다른 프로세스가 사용 불가
- 점유와 대기 : 한 프로세스가 자원을 점유하며 다른 자원 요청하며 대기하고 있는 상태
- 비선점 : 한 프로세스가 점유한 자원에 대해 다른 프로세스 선점 불가능
- 환형 대기 : 두개 이상의 프로세스간 자원의 점유와 대기가 하나의 원형을 구성한 상태
- 해결 방법 : 예방, 회피, 발견, 복구
6. OSI7계층
: 국제 표준화 기구 ISO에서 개바한 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 모델
프로토콜 : 서로다른 시스템이나
1) 물리 계층 : 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환
2) 데이터 링크 계층 : 링크의 설정과 유지 및 종료를 담당하며 노드 간의 회선제어, 흐름제어, 오류제어 기능을 수행하는 계층
- HDLC : 점대점 방식이나 다중 방식의 통신에 사용되는 ISO에서 표준화한 동기식 비트 중심의 데이터 링크 프로토콜
- PPP : 네트워크 분야에서 두 통신 노드 간의 직접적인 연결을 위해 일반적으로 사용되는 프로토콜
- 프레임 릴레이 : 프로그램 처리를 간략화하여 단순히 데이터 프레임들의 중계 기능과 다중화 기능만 수행함으로써 데이터 처리속도의 향상 및 전송 지연을 감소시킨 고속의 데이터 전송 기술
- ATM : 정보전달의 기본 단위를 53바이트 셀 단위로 전달하는 비동기식 시분할 다중화 방식의 패킷형 전송 기술
3) 네트워크 계층 : 다양한 길이의 패킷을 네트워크들을 통해 전달하고 그 과정에서 전송계층에서 요구하는 서비스 품질(Qos)을 위한 수단 제공, 라우팅, 패킷 포워딩, 인터 네트워킹 등을 수행, 단말기간 데이터 전송을 위한 최적화 경로 제공
- IP : 송수신간의 패킷 단위로 데이터를 교환하는 네트워크에서 정보를 주고 받는 데 사용
- ARP : IP네트워크 상에서 IP주소를 MAC 주소로 변환하는 프로토콜
- RARP : IP호스트가 자신의 물리 네트워크 주소는 알지만 IP는 모르는 경우 서버로 부터 IP주소를 요청하기 위해 사용
- ICMP : IP패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜
- IGMP : 인터넷 그룹관리 프로토콜, 호스트 컴퓨터와 인접 라우터가 멀티 캐스트 그룹 멤버쉽을 구성하는 데 사용하는 통신 프로토콜
- 라우팅 프로토콜 : 데이터 전송을 위해 목적지까지 갈 수 있는 여러 경로 중 최적의 ㄱ여로를 설정해주는 라우터 간의 상호 통신 프로토콜
- RIP : AS(오토시스템) 내에서 사용하는 거리벡터 알고리즘에 기초해 개발됨
- OSPF : 규모가 크고 복잡한 TCP/IP 네트워크에서 RIP 단점을 개선하기 위해 자신을 기준으로 링크 상태 알고리즘을 적용하여 최단 경로 찾음
- BGP : AS상호간에 경로 정보를 교환하기 위한 라우팅 프로토콜
4) 전송계층 : 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해주면서 종단간의 사용자들에게 신뢰성이 있는 데이터를 전달하는 계층, 순차제어 기반의 오류제어 방식 사용
- TCP : 전송 제어 프로토콜, 근거리 통신망이나 인트라넷, 인터넷에 연결됨, 컴퓨터에서 실행되는 프로그램 간의 일련의 옥텟을 안정적으로 교환시켜줌
- UDP : 비연결성, 신뢰성이 없으며, 순서화되지 않은 데이터그램 서비스 제공
5) 세션 계층 : 응용 프로그램 간 대화를 유지하기 위한 구조 제공, 이를 처리하기 위해 프로세스간 논리적 연결 담당, 송수신 간의 논리적 연결, 연결 접속, 동기제어
- RPC : 원격 프로시저 호출, 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저, 실행할 수 있는 프로세스 간 통신에 사용
- NetBIOS : 애플리케이션 프로그램에 API를 제공해 상호통신할 수 있게 해줌
6) 표현 계층 : 애플리케이션이 다루는 정보를 통신에 알맞은 형태로 만들거나, 하위계층에서 온 데이터를 사용자가 이해할 수 있는 형태로 만드는 역할 담당
- JPEG : 이미지를 위해 만들어진 표준 규격
- MPEG : 멀티미디어를 위해 만들어진 표준 규격
7) 응용 계층 : 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행하는 역하을 담당, 다양한 범주의 정보처리 기능을 수행할 수 있도록 여러 프로토콜 개체에 대해 인터페이스 제공
- HTTP : 텍스트 기반의 통신규약, 인터넷에서 데이터를 주고 받을 수 있는 프로토콜, 하이퍼 텍스트를 빠르게 교환
- FTP : TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일을 전송하기 위한 프로토콜
- SMTP : 인터넷에서 TCP포트 25번을 사용하여 이메을 보내기 위해 사용
- POP3 : 원격 서버로 부터 TCP/IP 연결을 통해 이메일을 가져오기 위해 사용
- IMAP : 원격 서버로 부터 이메일을 가져오기 위해 사용
- Telnet : 인터넷이나 로컬영역에서 네트워크 연결에 사용되는 네트워크 프로토콜
- SSH : Telnet보다 강력한 보안을 제공하느 원격 접속 프로토콜, 연결 컴퓨터 간 원격 명령 수행 가능
- SNMP : TCP/IP의 네트워크 관리 프로토콜로, 라우터나 허브 등 네트워크 장치로 부터 정보를 수집, 관리하며, 정보를 네트워크 관리 프로그램에 보내는데 사용
7. 네트워크 전달 방식
1) 패킷 교환 방식 : 데이터를 패킷 단위로 보내는 방식
- 장점 : 회선 효율이 우수, 비동기 전송이 가능, 연결 설정이 필요없고 다중 전달이 용이
- 단점 : 실시간 전송에 부적합, 네트워크 지연 발생
- 활용 : 이메일, 메시지 등
- 종류
데이터 그램 방식 : 연결경로를 확립하지 않고 각각의 패킷을 순서에 무관하게 독립적으로 전송하는 방식
가상회선 방식 : 패킷이 전송되기 전에 송수신 스테이션 간의 논리적인 통신 경로를 미리 설정하는 방식
2) 서킷 교환 방식 : 전승 경로를 설정한 뒤 데이터를 송수신하는 방식
- 장점 : 경로 접속시간은 1초 내외로 매우 빠름, 전송 제어 절차와 형식에 제약을 받지 않음
- 단점 : 송수신 측 모두 데이터 교환 준비가 완료되어야 함, 회선이 독점되어 있음
- 활용 : 영상, 비디오 등
8. 애드 혹 네트워크
- 노드들에 의해 자율적으로 구성되는 기반 구조가 없는 네트워크
- 응용 분야로는 긴급 구조, 긴급 회의, 전쟁터에서의 군사 네트워크 등이 있음