[정보처리기사실기] 기억장치 / 시스템 소프트웨어 / 운영 체제 / 파일 접근 권한

    반응형

    3과목. 운영체제

    📒 01. 운영체제 기초


    1. 기억장치

    (1) 기억장치의 개념

    • 데이터, 프로그램, 연산의 중간 결과 등을 일시적 또는 영구적으로 저장하는 장치

    (2) 기억장치의 종류

    • a) 레지스터
      - 중앙처리장치(CPU) 내부에 위치하고 있으며 용량이 매우 적음
      - 접근 시간이 CPU의 처리 속도와 매우 유사하며 가격이 비쌈
    • b) 캐시 메모리
      - CPU와 주기억장치 사이의 속도 격차를 줄이기 위해 사용
      - 실행 중인 프로그램의 자주 사용되는 명령어와 데이터 저장
      - 레지스터보다 조금 더 많은 양의 메모리를 저장
    • c) 주기억장치
      -  CPU가 직접 접근하여 데이터를 읽고 쓸 수 있는 장치
      종류 설명
      ROM
      (Read Only Memory)
      • 읽기만 가능한 읽기 전용 메모리
      • 비 휘발성 메모리
      종류 : mask-ROM, PROM, EPROM, EEPROM
      RAM
      (Random Access Memory)
      • 기억장소를 임의로 접근할 수 있는 메모리
      읽고 쓰기가 가능한 휘발성 메모리
      SRAM : 전원이 공급되는 중에 내용이 사라지지 않음 (캐시 메모리로 사용)
      DRAM : 일반적인 주기억장치로, 일정 시간이 지나면 내용이 사라지는 RAM
    • d) 연관 메모리
      - 주소에 의해 접근하지 않고, 기억된 내용의 일부를 이용하여 Access 할 수 있는 기억장치
    • e) 보조기억장치
      - 주기억장치에 비해 접근 시간은 느리지만, 기억 용량이 큼
      - 종류 : HDD, SSD, CD, USB 등
    • f) SSD(Solid State Drive)
      - 기계적인 움직임이 없는 반도체 기반 저장 장치
      - 하드디스크(HDD)는 움직이면서 읽고 씀
      - 하드디스크에 비해 훨씬 빠른 읽기 및 쓰기 속도 제공으로 빠른 데이터 전송 가능

     

    2. 시스템 소프트웨어

    (1) 시스템 소프트웨어의 개념

    • 응용 소프트웨어를 실행하기 위한 플랫폼 제공
    • 컴퓨터 하드웨어의 작동과 접근을 관리

    (2) 시스템 소프트웨어의 종류

    • a) 로더
      - 프로그램을 메모리에 적재하고 실행을 준비하는 역할
    • b) 링커
      - 목적 파일을 모아서 실행 파일로 변환
    • c) 유틸리티
      - 하드웨어, 운영체제, 응용 소프트웨어 관리를 지원
    • d) 번역기(컴파일러, 어셈블러)
      - 특정 프로그래밍 언어를 다른 언어로 변환
    • e) 장치 드라이버
      - 특정 하드웨어나 장치를 제어
    • f) 운영체제(대표적)
      - 하드웨어 관리와 통신 등 다양한 기능 제공

     

    3. 시스템 소프트웨어의 구성

    (1) 제어 프로그램 ⭐

    • a) 감시 프로그램(Supervisor Program)
      - 프로그램 실행과 시스템 상태를 감시/감독
    • b) 작업 관리 프로그램(Job Control Program)
      - 스케줄 관리 및 시스템 자원 할당 담당
    • c) 데이터 관리 프로그램(Data Control Program)
      - 데이터 전송 및 파일 조작 관리

    (2) 처리 프로그램

    • a) 서비스 프로그램(Service Program)
      - 사용 빈도가 높은 프로그램 포함
    • b) 문제 프로그램(Problem Program)
      - 특정 업무를 해결하기 위해 사용자가 작성한 프로그램
    • c) 언어 번역 프로그램(Language Translator Program)
      - 어셈블러, 컴파일러, 인터프리터 등

     

    4. 운영체제

    (1) 운영체제의 개념

    • 응용 프로그램이 하드웨어를 제어하여 실행될 수 있도록 관리하는 소프트웨어
    • 자원을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하게 사용할 수 있는 환경 제공

    (2) 운영체제의 기능

    • 프로세스 관리, 메모리 관리, 파일 관리, 입출력 관리, 보조기억장치 관리, 네트워킹, 정보 보안 관리, 명령해석 시스템

    (3) 운영체제 운용 기법 ⭐

      • a) 일괄 처리 시스템(Batch Processing System)
        - 여러 작업을 묶어서 한꺼번에 처리
      • b) 실시간 처리 시스템(Real-Time Processing System)
        - 요청 실행을 즉시 수행
      • c) 다중 프로그래밍 시스템(Multi-Programming System)
        - 하나의 작업이 입출력 중일 때 다른 작업을 처리
        - 하나의 CPU로 동시에 여러 프로그램이 실행되는 것처럼 보임
      • d) 시분할 시스템(Time Sharing System)
        - 정해진 시간 동안 작업 실행
      • e) 다중 처리 시스템( Multi-Processing System)
        - 여러 CPU를 이용해 동시에 여러 작업 처리
        - 병렬 처리 시스템(Parallel Processing System)이라고도 함
      • f) 다중 모드 시스템(Multi-Mode System)
        - 다양한 운용 기법을 혼합하여 사용
      • g) 분산 처리 시스템(Distribute Processing System)
        - 여러 독립된 시스템이 통신으로 연결되어 상호작용

    (4) 운영체제 성능 평가 기준

    • a) 처리량(Throughput)
      - 일정 시간 내 처리하는 작업의 양
    • b) 반환시간(Turnaround Time)
      - 작업 요청부터 결과 반환까지 소요되는 시간
      - 대기시간 + 실행시간 + 응답시간
    • c) 신뢰도(Reliability)
      - 작업 결과의 정확도 및 신뢰성을 나타냄
    • d) 사용 가능도(Availiability)
      - 시스템의 즉시 사용 가능한 정도(가용성)
    • e) 확장성(Scalability)
      - 시스템이 증가하는 부하나 요구사항에 맞춰 적절히 확장되는 능력
    • f) 보안(Security)
      - 시스템이 외부 위협으로부터 보호하는 능력, 데이터의 기밀성, 무결성, 가용성을 유지하는 능력
    • g) 자원 활용도(Resource Utilization)
      - 시스템 자원이 얼마나 효과적으로 사용되는지 나타냄

     

    5. 운영체제의 종류

    (1) 윈도우(Windows)

    • a) 의미
      - 마이크로소프트사에서 개발한 운영체제
    • b) 특징
      - GUI 환경 제공
      - 선점형 멀티태스킹 방식 : 운영체제가 강력한 제어권을 가짐

    (2) 리눅스(Linux)

    • a) 의미
      - 리누스 토발즈에 의해 개발된 오픈소스 유닉스 호환 운영체제
    • b) 특징
      - 다중 사용자 시스템 : 여러 사용자가 동시에 시스템에 접근하고 프로그램을 사용할 수 있음
      - C언어로 개발되어 다른 시스템으로의 이식 가능
      - 유닉스와 완벽하게 호환 가능

    (3) 유닉스(Unix)

    • a) 의미
      - 켄 톰슨이 개발한 운영체제로, 어셈블리 언어로 개발되었으나 C언어로 다시 작성
    • b) 특징
      - 시분할 시스템 : 대화식 운영체제로, 시간을 분할하여 많은 프로그램이 동시에 수행
      - 파일 구조 : 트리 구조의 파일 시스템
    • c) 시스템의 구성
      구성 설명
      커널
      (Kernel)
      • UNIX의 가장 핵심적인 부분
      • 컴퓨터가 부팅될 때, 주기억장치에 적재된 후 상주하면서 실행
      다양한 시스템 관리 기능 실행

      (Shell)
      • 명령어 해석기
      사용자 명령어를 해석하여 프로그램을 호출하고 명령을 수행하는 인터페이스
      유틸리티 프로그램
      (Utility Program)
      • 일반 사용자가 작성한 응용 프로그램을 처리하는 데 사용
      • 에디터, 컴파일러, 인터프리터, 디버거 등
    • d) 파일 시스템의 구조
      특징 설명
      부트 블록 • 부팅 시 필요한 코드가 저장되는 블록
      슈퍼 블록 • 전체 파일 시스템에 대한 정보가 저장된 블록
      I-node 블록 • 각 파일이나 디렉터리에 대한 모든 정보가 저장된 블록
      데이터 블록 • 실제 파일 데이터(내용)가 저장된 블록
    • e) 파일 디스크립터(FD, File Descriptor)
      - 유닉스 시스템에서 프로세스가 파일에 접근할 때 사용하는 것으로 파일 제어 블록(File Control Block)이라고도 함
      - 파일에 대한 정보를 관리하는 것
      - 보조기억자치에 저장되어 있으며, 파일이 열리면 주기억장치로 이동
    • f) POSIX(Portable Operating System Interface)
      - 이식 가능한 운영체제 인터페이스

    (4) MacOS

    • a) 의미
      - 애플이 개발한 유닉스 기반의 운영체제
    • b) 특징
      - macOS는 애플이 하드웨어에서만 공식적으로 구동될 수 있음

     

    6. 운영체제별 파일 시스템

    (1) 파일 시스템의 개념

    • 컴퓨터 시스템에서 데이터를 저장하고 검색하는 방법을 정의하는 데 사용되는 구조와 규칙의 집합

    (2) 파일 시스템의 역할

    • 데이터 저장 구조화, 데이터 관리, 보안 및 접근 제어, 데이터 무결성 및 복구

    (3) 운영체제별 파일 시스템

    • Windows : NTFS, FAT32
    • macOS : APFS, HFS+
    • Linux : Ext4, Btrfs
    • UNIX : UFS

     

    7. Linux, Unix 파일 접근 권한 관리

    (1) 필드별 의미

    파일 접근 권한

    (2) 권한별 값

    구분 설명
    R(Read) 4 읽기 권한
    W(Write) 2 쓰기 권한
    X(Execute) 1 실행 권한
    - 0 권한 없음

    (3) umask(접근 권한 마스크)

    • a) 의미
      - 새로 만들어질 파일 및 디렉터리에 대한 기본 권한 설정에서 제거될 권한을 명시
      - 기본적으로 파일은 666, 디렉터리는 777을 가지게 됨
    • b) 예시

      umask 022

      ① 새 파일 : 666(기본 권한) - 022(제거 권한)
           → 644 권한 (소유주 : 읽기, 쓰기 / 그룹 및 나머지 : 읽기)

      ② 새 디렉터리 : 777(기본 권한) - 022(제거 권한)
           → 755 권한 (소유주 : 읽기, 쓰기, 실행 / 그룹 및 나머지 : 읽기, 실행)

    (4) 권한 및 소유주 변경

    • chmod 0751 file명 : 권한을 '751'로 변경
    • chown peazh file명 : 해당 파일의 소유주를 'peazh'로 변경

     

    더보기

    하드디스크에 프로그램을 설치하고 실행하면 ram(주기억장치)에 적재되는데, 이걸 프로세스라고 함

    cpu가 프로세스 처리를 해주는데 이걸 프로세서 라고 함

    정리하면 프로세스는 실행 중인 프로그램, 프로세서는 프로세스를 처리하는 것

     

    자기가 알아서 생성하는 것

    - 시스템 카탈로그 : DBMS가 데이터베이스 관리하기 위해 생성

    - 파일 디스크립터 : 운영체제가 파일을 관리하기 위해 생성

    - PCB(Process Control Block) : 운영체제가 프로세스(실행 중인 프로그램)를 관리하기 위해 생성, 문맥교환을 가능하게 함

    * 문맥교환 : 작업을 전환하는 것으로, 카톡 하다 ppt 하는 것

     

    참고자료

    흥달쌤,  '흥!나게 합격 달성! 2024 정보처리기사 실기 클래스'
     

    1억뷰 N잡

    [1회 연장 포함] 흥!나게 합격 달성! 2024 정보처리기사 실기 클래스

    www.njobler.net

    반응형

    댓글