본문 바로가기

전체 글

(90)
스케줄링 스케줄링 비선점(Non-preemptive) 스케줄링 -이미 할당된 CPU를 다른 프로세스가 강제로 빼앗아 사용할 수 없는 스케줄링 기법 -FCFS(First Come First Service, 선입 선출) = FIFO(First In First Out) : 준비상태 큐에 도착한 순서에 따라 차례로 CPU를 할당하는 기법으로 가장 간단한 알고리즘 -SJF(Shortest Job First, 단기 작업 우선) : 준비상태 큐에서 기다리고 있는 프로세스들 중에서 실행 시간이 가장 짧은 프로세스에게 먼저 CPU를 할당하는 기법 -HRN(Hightest Response-ratio Next) 실행 시간이 긴 프로세스에 불리한 SJF 기법을 보완하기 위한 것으로 대기 시간과 서비스 시간을 이용하는 기법 우선순위 계..
프로세스(Process) 관리 프로세스(Process) 관리 프로세스는 프로세서(처리기, CPU)에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행중인 프로그램을 의미 하며 작업(Job), 태스크(Task)라고도 불린다. 프로세스 상태 전이 제출(Submit) 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태 접수(Hold) 제출된 작업이 스풀 공간이 디스크의 할당 위치에 저장된 상태 준비(Ready) 프로세스가 프로세서를 할당받기 위해 기다리고 있는 상태 실행(Run) 준비상태 큐에 있는 프로세스가 프로세서를 할당받아 실행되는 상태 대기(Wait), 블록(Block) 프로세스에 입출력 처리가 필요하면 현재 실행 중인 프로세스가 중단되고 입출력 처리가 완료될 때까지 대기하고 있는 상태 종료(Terminated, E..
가상 기억장치(Virtual Memory) 가상 기억장치(Virtual Memory) 보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용하는 것으로 용량이 작은 주기억장치를 마치 큰 용량을 가진 것처럼 사용하는 것으로 현재 사용되는 운영체제에서 흔히 사용되는 기법 가상 기억장치 구현 기법 페이징(Paging) 기법 : 가상 기억장치에 보관돼 있는 프로그램과 주기억장치의 영역을 동일한 크기로 나눈 후 나눠진 프로그램(페이지)을 동일하게 나눠진 주기억장치의 영역에 적재시켜 실행하는 기법으로 외부 단편화는 발생하지 않으나 내부 단편화는 발생 세그먼테이션(Segmentation) 기법 : 가상 기억장치에 보관돼 있는 프로그램을 다양한 크기의 논리적인 단위로 나눈 후 주기억장치에 적재시켜 실행시키는 기법으로 내부 단편화는 발생하지 않으나 외부 단편화는 ..
기억장치 관리 전략 기억장치 관리 전략 보조기억장치의 프로그램이나 데이터를 주기억장치에 적재시키는 시기, 적재 위치 등을 지정해 한정된 주기억장치의 공간을 효율적으로 사용하기 위한 것 반입(Fetch) 전략 보조기억장치에 보관중인 프로그램이나 데이터를 언제 주기억장치로 적재할 것인지를 결정하는 전략으로 요구반입(Demand Fetch)과 예상반입(Anticipatory Fetch)이 있다. 배치(Placement) 전략 새로 반입되는 프로그램이나 데이터를 주기억장치의 어디에 위치시킬 것인지를 결정하는 전략 최초 적합(First Fit) : 프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중에서 첫 번째 분할 영역에 배치시키는 전략 최적 적합(Best Fit) : 프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중..
명령어 명령어 Windows의 CLI 기본 명령어 dir : 현재 디렉터리 파일 목록 표시 copy : 파일 복사 del : 피일 삭제 type : 파일 내용 표시 ren : 파일 이름 변경 md : 디렉터리 생성 cd : 동일한 드라이브에서 디렉터리 위치 변경 cls : 화면 내용 지움 attrib : 파일 속성 변경 find : 파일에서 문자열 찾음 shkdsk : 디스크 상태 점검 format : 디스크 표면을 트랙과 섹터로 나눠 초기화 move : 파일 이동 UNIX/LINUX의 CLI 기본 명령어 cat : 파일 내용을 화면에 표시 cd : 디렉터리 위치 변경 chmod : 파일의 보호 모드를 설정해 파일 사용 허가 지정 chown : 파일 소유자와 그룹 변경 cp : 파일 복사 rm : 파일 삭제 f..
Kernul/Shell Kernul/Shell Kernul UNIX의 가장 핵심적인 부분 하드웨어를 보호하고 프로그램들과 하드웨어 간의 인터페이스 역할 담당 프로세스, 기억장치, 파일, 입·출력 관리, 프로세스 간 통신, 데이터 전송 및 변환 등 여러 가지 기능을 수행 컴퓨터 부팅 시 주기억장치에 적재돼 상주하면서 실행 Shell 사용자의 명령어를 인식해 프로그램을 호출하고 명령을 수행하는 명령어 해석기 시스템과 사용자 간의 인터페이스 담당 DOS의 COMMAND.COM과 같은 기능을 수행 주기억장치에 상주하지 않고, 명령어가 포함된 파일 형태로 존재하며 보조기억장치에서 교체 처리 가능 종류 : Bourne Shell, C Shell, Korn Shell 등
운영체제(OS; Operating System) 운영체제(OS; Operating System) 운영체제 -컴퓨터 시스템의 자원들을 효율적으로 관리하며 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램 모임 -목적 : 처리 시간 향상, 신뢰도 향상, 사용 가능도 향상, 반환 시간 단축 -성능 평가 기준 처리 능력(Throughout) 일정 시간 내 시스템이 처리하는 일의 양 반환시간(Turn Around Time) 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린시간 사용 가능도(Avilabiliy) 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도 신뢰도(Reliability) 시스템이 주어진 문제를 정확하게 해결하는 정도 -기능 프로세서, 기억장치, 입·출력장치, 파일 및 정보 등의 자원 관리 자원..
보안점검-2 보안점검 코드 오류 -소프트웨어 구현 단계에서 개발자들이 코딩 중 실수하기 쉬운 형 변환, 자원 반환 등의 오류를 예방하기 위한 보안 점검 항목들이다. -코드 오류로 발생할 수 있는 보안 약점 널 포인터 (Null Pointer)역참조 -널 포인터가 가리키는 메모리에 어떠한 값을 저장할 때 발생하는 보안 약점 널 포인터(Null Pointer) : 널(Null)은 값이 없음을 의미하며 포인터(Pointer)는 메모리의 위치를 가리키는 요소이다. 널 포인터(Null Pointer)는 포인터에 널(Null)이 저장돼 어떠한 곳도 가리키지 못하는 상태의 요소를 말한다. -널(Null)이 될 수 있는 포인터를 이용하기 전에 널 값을 갖고 있는지 검사함으로써 방지 부적절한 자원 해제 -자원을 반환하는 코드를 누락..