반응형
프로세스 관리
프로세스(Process)
- 실행중인 프로그램, 하나의 작업이나 하나의 시분할 프로그램으로 생각 가능
- 시스템 내의 작업 단위로 사용
- 자신의 일을 수행하기 위해 여러 자원 필요(CPU 시간, 메모리 파일, I/O장치 등)
- 다중 스레드 프로세스 : 복수개의 프로그램 카운터를 가지고 있으며, 이 카운터들은 각 스레드가 실행할 다음 명령어를 가리킴
- 프로세스 종류
- 운영체제 프로세스 : 시스템 코드를 수행하는 프로세스
- 사용자 프로세스 : 사용자 코드를 수행하는 프로세스
- 모든 프로세스 간에 하나의 CPU를 다중화 함으로써 병행 수행
주의) 프로그램(Program) 그 자체는 프로세스 X
프로그램 : 수동적 개체(Passive Entity)
프로세스 : 능동적 객체(Active Entity)
(PC : 프로그램 실행 -> M.M에 적재 -> CPU 실행 -> HDD에 머물러 있는 상태)
보호와 보안
- 보호(Protection)
: 컴퓨터 시스템이 정의한 자원에 대해 프로그램, 프로세스, 또는 사용자들의 접근을 제어하는 기법 - 보안(Security)
: 시스템 외부 or 내부의 공격을 방어하는 것
- 보호와 보안을 제공하기 위해서 시스템의 모든 사용자들을 구분할 수 있어야 함
- 대부분의 OS : 사용자 식별자(User IDS, Security IDs)리스트를 유지
-> 사용자마다 할당, 시스템에서 유일한 값을 가지고, 로그인 인증 단계에서 사용자에 맞는 식별자 결정- 그룹 기능 : 시스템 전체에 존재하는 그룹 이름과 그룹 식별자(Group ID) 리스트로 구현
- 운영체제는 특권(Privilege)을 획득할 수 잇는 다양한 방법을 제공(ex. UNIX의 setuid)
- 대부분의 OS : 사용자 식별자(User IDS, Security IDs)리스트를 유지
커널 자료구조
- 연결리스트
- 단일 연결 리스트
- 이중 연결 리스트
- 원형 연결 리스트
- 트리 : 데이터 서열을 표시하는데 사용 가능한 자료구조
- 이진 탐색 트리(균형 이진 탐색 트리)
- 해시함수 : 데이터를 입력으로 받아 이 데이터에 산술 연산을 수행하여 하나의 수를 복귀
- 해시 맵을 구현하는 일도 함
- 단점 : 해시 충돌(Hash Collision)
- 비트맵(Bitmap) : n개 항의 상태를 나타내는데 사용 가능한 n개의 이진 Bit 스트링
컴퓨팅 환경
전통적 컴퓨팅
- 전형적인 사무실 환경
: 네트워크에 연결된 PC들과 파일과 프린트 서버를 제공하는 서버들로 구성 - -> 현재 : 원격 접근, 이동성을 다양하게 제공. 회사들은 포털(Portal)을 구현
- 홈 네트워크
: 가정 내 다양한 정보 기기들 상호 간 네트워크를 구축- 하나의 컴퓨터가 느린 모뎀을 연결해서 사용
클라이언트-서버 컴퓨팅(Client-Server Computing)
- 오늘날 많은 시스템 : 클라이언트 시스템에 의해 생성되는 요구를 만족 시키기 위한 서버 시스템으로 동작. 이런 특별한 분산시스템 : 클라이언트-서버 시스템
- 서버 시스템은 넓게 ‘계산 서버’와 ‘파일 서버’로 분류
- 계산 서버: 어떤 작업(자료 읽기)을 요청할 수 있는 인터페이스를 제공
- 파일 서버: 파일 생성, 갱신, 읽기 및 제거할 수 있는 파일 시스템 인터페이스를 제공
Peer-to-Peer(P2P) Computing
- 분산 시스템의 또 다른 구조
- 클라이언트와 서버가 서로 구별 X
- 모든 시스템 상의 노드가 '피어(Peer)'로 구분
- 피어 : 서비스를 요청하느냐, 제공하는냐에 따라 클라이언트, 서버로 동작
Web-Based Computing
- ‘웹’(Web)은 도처에 있으며(Ubiquitous), 다양한 장치에 의한 접근을 허용
- PC가 아직까지 가장 널리 퍼진 접근 장치, 워크스테이션, 휴대용 PDA, 그리고 휴대전화도 접근을 제공
- 웹 기반 컴퓨팅의 구현 : 네트워크 연결을 비슷한 서버 풀 내에서 분배 하는 부하 분산 장치(Load Balancer)와 같은 새로운 장치를 탄생시킴
Cloud Computing
- 계산, 저장장치, 응용을 자신의 컴퓨터가 아닌 네트워크를 통한 서비스로 제공하는 컴퓨팅 유형
- 가상화의 논리적 확장
- 종류
- 공공 클라우드
- 사유 클라우드
- 혼합형 클라우드
- 장점
- 초기 구입 비용, 비용 지출 ↓ , 휴대성 ↑
- 컴퓨터 가용율 ↑
- 다양한 기기를 단말기로 사용 가능, 일치된 사용자 환경 구현
- 데이터를 안전하게 보관
- 전문적인 H/W 지식 없이도 쉽게 이용 가능
- 단점
- 서버가 공격당하면, 개인정보 유출될 수 있음
- 미리 백업하지 않으면 손상된 데이터를 되살리지 X
- 통신환경이 열악하면 서비스가 어려움
- 개별 정보가 물리적으로 어디에 위치하는지 알 수 X
실시간 내장형 시스템(Real-time Embedded Systems)
- 현재 가장 유행하는 컴퓨터 유형. 아주 특정한 작업만을 수행
- 시스템 : 매우 원시적 / 운영체제 : 제한된 기능만을 제공
- 사용 증가 추세
- 내장형 시스템은 거의 언제나 실시간 운영체제(RTOS)를 수행
- 내장형 시스템은 매우 다양
- 어떤 시스템 : 운영체제를 수행하면서 특수 목적을 가진 응용 프로그램을 수행
- 다른 시스템은 운영체제 없이 필요한 작업을 수행하는 응용 전용 칩만을 갖는 H/W 장치
- 실시간 시스템 : 잘 정의된 고정된 시간 제약을 가짐
- 정의된 제한 시간 내에 반드시 처리가 이루어져야 함
- 정해진 시간 제약 내에 올바른 결과를 돌려줄 수 있을 때에만 정확히 동작하는 것으로 간주
반응형