Clean & Blue 자세히보기

전공/정보처리기사 실기

정보처리기사 실기 - 10 . 응용 SW 기초 기술 활용(3) /운영체제 기초 활용하기 -3

_청렴 2021. 5. 15. 17:25
반응형

NCS 정보처리기사

- 작업 우선순위

- 프로세스 : 프로그램이나 명령어를 실행 시 메모리에 적재되어 동작하는 상태

-> 식별번호인 PID 할당

-> 최상위 프로세스는 항상 init

 -> 나머지는 항상 부모 프로세스PPID를 가짐

-> Linux는 모든 프로세스가 공평하게 자원을 배분받지는 못함

 

* inode : 파일에 대한 정보(형식, 권한, 소유자, 크기 등)를 저장하는 자료구조(구조체)

 

- Linux 프로세스 우선순위 관리

- 우선순위 값의 범위는 -20 ~ +19 이며 낮을수록 우선순위 높음

 

-  jobs : 명령어 실행 시 백그라운드로 실행되는 작업 번호 목록 확인

* 명령어 뒤에 & 붙이면 백그라운드로 실행

- PRI(시스템이 nice의 데이터를 이용하여 계산한 실제 우선순위 값)

- NI : nice에 의해 설정된 우선순위 값

- nice -15 sleep & : nice값 15 = nice -n 15 sleep &

 

- snice +10 sleep : 실행중인 sleep의 우선순위 값 설정 가능

- renice [우선순위][PID] : 실행 중인 프로세스 동작의 우선순위 설정

 

- ps -aux | grep sleep : sleep 프로세스의 PID 확인

* 우선순위 높이기는 root만 수행 가능

 

- kill [PID]로 프로세스가 죽지 않을 경우

 -> signal 번호의 기본값은 15(SIGTERM) 신호 -> 내부적으로 15번 신호를 막을 경우 안됨

 -> 9번 시그널이나 SIGKILL 이용하여 종료

  -> kill -9 1617

  -> kill -SIGKILL 1617

 

- Windows 작업(process) 우선순위 개요

- 실시간(Real Time), 높음(High), 높은 우선순위(AboveNormal), 보통(Normal), 낮은우선순위(BelowNormal), 낮음(Idle)

- [시작] > [Windows 시스템] > [작업관리자] -> [세부정보] 탭

 -> 프로세스 또는 디렉토리 선택하여 오른쪽 키 -> 우선순위 확인 및 변경

 

- path = C:\Progrma Files\notepad

   start /realtime notepad.exe

   -> notepad -> 실시간 적용

 

- 레지스트리 편집기로 우선순위 변경

-> 실시간(RealTime)으로 변경되지는 않음

- HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Image File\ExecurtionOptions\프로세스이름.exe\perfOtions

 -> 만든 키에서 새로만들기 > '문자열 만들기' 를 클릭 > 이름 'cpuPriorityClass' 입력

  -> 값 '3' 입력

  -> CpuPriorityClass = 3(High)

 

- 운영체제 심화학습

- 프로세스 관리

프로세스의 주요 상태는 생성, 준비, 수행, 대기, 종료 등이 있다.

 

- 메모리 관리

프로그램의 실행이 종료될 때까지 메모리를 가용한 상태로 유지 및 관리하는 것

-> 메모리에 있는 프로그램은 중앙처리장치인 CPU로 이동하여 처리

 -> CPU는 Virtual 혹은 Logical address를, 메모리는 Physical address를 사용

  -> MMU(Memory Management Unit)이 이를 매핑하는 일을 담당

 

- 메모리 관리기법의 종류

 

- 반입 정책

  • 요구 반입 기법 - 메모리 공간 요구 시 반입
  • 예상 반입 기법 - 다음 명령어를 예측하고 미리 공간을 확보

 

- 배치 정책

  • 최초 적합 - 맨 처음 빈 공간에 할당
  • 최적 적합 - 가장 딱 맞는 공간에 할당
  • 최악 적합 - 가장 큰 빈 공간에 할당

 

- 할당 정책

  • 연속 할당 - 명령어를 연속된 메모리 주소에 할당
  • 불연속 할당 - 명령어를 연속되지 않은 주소에 할당하여 각 끝부분을 링킹함
  • 페이징 - 메모리를 페이지 단위로 구성하여 관리
  • 세그먼트 - 코드 세그먼트, 스택 세그먼트, 데이터 세그먼트, 힙 등으로 나누어 메모리를 관리

 

- 교체 정책 

  • LRU - 사용한지 오래된 페이지부터 교체
  • LFU - 가장 참조 횟수가 적은 페이지부터 교체
  • NRU - 최근 사용한 적이 없는 페이지부터 교체
  • FIFO - 선입선출
  • 프로세스 Swap In/Out

 

- 분산 메모리 할당 방식

동일 크기로 프레임을 분할하는 페이징 기법과 사용자 관점에서 메모리를 할당하는 세그먼트 기법

 

- 페이징 기법 : 페이지라고 불리는 프로세스 영역들이 프레임(페이지 프레임)이라고 불리는 고정크기 블록의 메모리 영역에 할당됨

 -> 내부 단편화 발생 : 페이지가 작으면 내부 단편화가 감소하나 페이지 테이블을 유지하기 힘듬

* 페이지 테이블 : 논리 메모리 페이지 번호와 물리 메모리 프레임 번호를 매핑한 테이블

 

- 세그먼트 기법 : 서브루틴, 모듈 등의 크기 별로 할당

 -> 컴파일러가 세그먼트를 작성, 동적(가변)분할 기법으로 프로그램을 코드, 데이터, 스택 세그먼트로 구성

 -> 세크먼트 테이블은 메인 메모리에 존재

 -> 외부 단편화 발생

 

- 운영체제 최신 트렌드

- 가상화(Virtualization)

물리적인 리소스들을 사용자에게 하나로 보이게 하거나 반대로 하나의 물리적인 리소스를 여러개로 보이게 하는 것을 의미

 -> 운영체제 가상화 환경은 kvm, Vmware, Hiper-v 등의 HiperVisor가 지원

 

- 클라우드 컴퓨팅(Cloud Computing)

인터넷 기반에서 구동되는 컴퓨팅 기술

-> 응용프로그램을 필요에 따라 불러 사용하고, 데이터를 손쉽게 저장 및 추출

  • IaaS(Infrastructure as a Service) : 웹 상에서 다양한 인프라를 임대하여 이용할 수 있는 서비스
  • PaaS(Platform as a Service) : 운영체제가 이미 구성되어 있는 상태에서 사용자는 데이터와 애플리케이션만 직접 관리할 수 있는 서비스
  • SaaS(Software as a Service) : 웹 상의 로그인만으로 다양한 소프트웨어를 사용한 만큼 비용을 지불해가며 사용할 수 있는 서비스
 

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(4) /데이터베이스 기초 활용하기 -1

2) 데이터베이스 기초 활용하기 - 데이터베이스의 종류 -> 오라클의 Oracle과 MySQL, 티맥스의 Tibero, MSN사의 SQL Server, IBM의 DBI등 -> 오픈소스로는 PostgreSQL, MariaDB 등 - RDBMS : 테이블 구조관계 기본..

aapslie94.tistory.com