본문 바로가기

카테고리 없음

[정보처리기사 실기] 수제비 2023년도 3회 실기대비 메모용

반응형
  1. RAID 단계
    RAID 단계 설명
    0 스트라이핑, 병렬로 연결, 하나의 디스크만 손상되어도 디스크 전체 문제
    1 미러링, 같은 데이터를 다른 데이터에 동일하게 복사
    2~4 하나의 디스크에 오류 정정 부호를 비트/바이트/워드 단위로 저장,
    하나의 디스크가 손상되어도 정상가동, 최소 3개의 디스크 필요
    5 오류 정정 부호를 여러 디스크에 분산 저장
    최소 3개 디스크 필요, 하나 디스크 손상되어도 정상 동작
    6 오류 정정 부호 2개를 여러 디스크에 분산 저장
    2개의 디스크가 손상되어도 정상 작동, 최소 4개 디스크 필요
     
  2. [학생] 테이블에 학번이 98, 성명 수제비, 학년이 3학년, 수강과목은 컴퓨터인 학생을 삽입하는 쿼리문 작성하기
    -→ insert into 학생(학번, 성명, 학년, 수광과목) values(98,’수제비’,3,’컴퓨터’);
  3. 객체 지향 설계 원칙
    1. Single Responsibility Principle (SRP) - 단일 책임 원칙
    정의: 한 클래스는 하나의 책임만 가져야 한다는 원칙입니다. 여기서 '책임'은 그 클래스가 변경되어야 하는 이유를 의미합니다. 즉, 하나의 클래스는 하나의 기능만 수행하는 것이 이상적입니다.

    목적: 클래스 변경 시 파급 효과를 최소화하여, 유지보수성을 높입니다.

    2. Open/Closed Principle (OCP) - 개방-폐쇄 원칙
    정의: 소프트웨어 엔티티(클래스, 모듈, 함수 등)는 확장에는 열려 있어야 하며, 수정에는 닫혀 있어야 한다는 원칙입니다. 즉, 기존의 코드를 변경하지 않고도, 시스템의 기능을 확장할 수 있어야 합니다.

    목적: 시스템을 쉽게 변경하거나 확장할 수 있도록 하여, 유연성과 재사용성을 높입니다.

    3. Liskov Substitution Principle (LSP) - 리스코프 치환 원칙
    정의: 서브타입은 언제나 그것의 기반 타입으로 교체할 수 있어야 한다는 원칙입니다. 즉, 부모 클래스의 인스턴스를 자식 클래스의 인스턴스로 대체해도 시스템의 동작에 문제가 없어야 합니다.

    목적: 상속 구조를 보다 탄력적으로 사용할 수 있도록 하여, 코드의 재사용성을 높입니다.

    4. Interface Segregation Principle (ISP) - 인터페이스 분리 원칙
    정의: 클라이언트는 자신이 사용하지 않는 인터페이스는 구현하도록 강제되어서는 안 된다는 원칙입니다. 즉, 하나의 일반적인 인터페이스보다는, 필요한 인터페이스들을 분리하여 제공하는 것이 좋습니다.

    목적: 불필요한 의존성을 최소화하여, 시스템의 결합도를 낮춥니다.

    5. Dependency Inversion Principle (DIP) - 의존관계 역전 원칙
    정의: 고수준 모듈은 저수준 모듈에 의존해서는 안 되며, 둘 다 추상화에 의존해야 한다는 원칙입니다. 추상화는 세부 사항에 의존해서는 안 되며, 세부 사항은 추상화에 의존해야 합니다.

    목적: 모듈 간의 결합도를 낮추어, 시스템의 유연성과 유지보수성을 높입니다.

  4. Accounting 로그인 했을 때 이에 대한 기록을 남기는 활동, 시스템에 접근한 사용자 추적에 활용될 수 있다
    Authentication 자신의 신원을 시스템에 증명하는 과정을 의미하며, 주체의 신원을 객체가 인정해주는 행위
    Authorization 검증된 가입자나 단말에게 어떤 수준의 권한과 서비스를 허용하는 것을 말하며, 특정 업무를 수행할 권리를 부여


  5. 버퍼 오버플로 대응 방안
ASLR
(Address Space Layout Randomization)
프로그램이 실행될 때 마다 해당 프로그램이 사용하는 메모리주소를 무작위로 배치하여 공격프로그램이 추측하기 어렵게 만드는 리눅스 운영체제 기능 활용 기법
스택 가드 Canary라고 불리는 무결성 체크값을 복귀주소와 변수 사이 삽입, 버퍼오버플로 발생시 canary 체크해서 대응
스택 쉴드 함수 시작 시 복귀 주소를 Global RET라는 특수 스택에 저장해두고 함수 종료시 저장된 값과 RET값을 비교해서 다를경우 오버플로로 간주하고 실행을 중단

 

 
반응형