hmk run dev

정처기 오답노트 본문

cs

정처기 오답노트

hmk run dev 2022. 2. 9. 09:55

UML 다이어그램 종류 (액시디콜컴클)

UML이란 소프트웨어 시스템을 구축하기 전에 모델을 설계한 그림으로된 표기법

 

- Activity

- Sequence

- Deployment

- Collaboration

- Component

- Class


화이트박스 테스트 - 내부구조를 알고 동작검사

블랙박스 테스트 - 내부구조, 작동원리를 모르고 검사


스택을 사용한 연산 - 재귀호출, 후위연산, 깊이 우선탐색(DFS)

큐 - 선택정렬, 넓이 우선탐색(BFS)


병렬 데이터베이스 분할방법

 

수평분할 - 라운드-로빈, 범위 분할, 해시 분할

수직분할 - 예측분할


데이터베이스 설계 단계

 

개념적 설계 - 사용자의 요구사항 분석 후 DB에 대한 추상적인 형태 설계(ERD 작성)

논리적 설계 - 논리적 모델이용 스키마 생성, 개념적 설계에서 생성된 ERD 바탕으로 테이블 집합

물리적 설계 - 특정 DBMS가 제공하는 물리적 구조에 따라 테이블 설계

 

스키마는 개념적, 논리적 > 물리적 X


순수관계 연산자

 

select - 수평단절, 행을 다가져옴

project - 수직단절, 열을 다가져옴

join - 공통 속성을 이용해 두개의 릴레이션을 합함

division - 릴S의 모든 튜플과 관련있는 릴R의 튜플반환

 

일반 집합 연산자

 

union - 합집합

intersection - 교집합

difference - 차집합

cartesian prodect - 교차곱


개체 관계 모델(E-R)그래픽 표현 ( 삼각형은 없다. )

 

개체타입 - 사각형

속성 - 원형

관계타입 - 마름모

연결 - 선


정규형 단계

 

1NF 도 -> 2NF 부 -> 3NF 이 -> BCNF 결 -> 4NF  다 -> 5NF  조 

 


응집도 순서 (높을수록 좋음) - 높은순서로  >

 

우(Conincidental) > 논(Logical) > 시(Temporal) > 절(Procedural) > 교(Communicaion) > 순(Sequential) > 기(Functional)

 

결합도 순서(낮을 수록 좋음 ) - 낮은순서로 >

 

내(Content) > 공(Common) > 외(External) > 제(Control) > 스(Stamp) > 자(Data)


TCP 프로토콜

 

- 흐름제어 기능

- 전이 중 방식의 양방향 가상회선 제공

- 전송 데이터와 응답데이터 함께 전송가능

- Point to Point 방식

 

데이터 링크

- 인접한 노드 사이의 프레임 전송 및 오류 제어


라우팅 프로토콜 OSPF(Open Shortest Path First)

- 변화에 신속하게 대처

- 멀티캐스팅

- 최단거리 알고리즘 Dijkstra 사용

 

거리벡터 라우팅은 RIP


코드 오류 종류

 

생략오류(Omission) - 한 자리를 뺀 경우

필사오류(Transcription) - 한 자리를 잘못입력

전위로유(Transposion) - 좌우 자리를 바꾸어 기록

이중오류(Double Transposition) - 전위 오류가 두가지 이상 발생

추가오류(Addition) - 한 자리를 더 추가한경우

임의오류(Random) - 위 오류중 두 가지 이상이 나타난 경우


해쉬(Hash)

 

1, 단방향

종류 - N-NASH, SNEFRU,SHA, MD5 (NSSM)

특징 - 임의의 길이의 입력 데이터나 메세지를 고정길이 값이나 키로 변환

암호화, 무결성 검증을 위하여 사용

 

2. 양방향

개인키

 

Stream 방식 - LFSR, RC4

Block 방식 - SEED, AES, ARIA, DES (SAAD)

특징 - 암호화 복호화보다 속도가 빠르며 파일 크키가 작음, 암호화 키와 복호화 키가 같다.

단점 - 사용자에 따라 관리해야 할 키의 수가 많아짐

 

공개키 - RSA

키 분배용이 관리해야할 키의 수가 비교적 적음

암호화 복호화보다 속도가 느리며 알고리즘 복잠, 파일 크키가 큼

 


생성패턴(추빌팩프싱)

- 추상 팩토리

- 빌더

- 팩토리 메서드

- 프로토타입

- 싱글톤

 

구조패턴(어브컴데파플프)

- 어댑터

- 브릿지

- 컴포지트

- 데코레이터

- 파사드

- 플라이웨이트

- 프록시

 


객체지향 분석 방법론

 

Coad-Youdon - E-R다이어그램 사용 객체 데이터 모델링

럼바우 - 객체, 동적, 기능 모델로 나누어 수행

Booch - 미시적 거시적 개발 프로세스 모두 사용

Jacobson  - Use-Case강조


CASE(computer Aided Software Engineering)

일관성 분석을 통해 요구사항 변경사항의 추적, 분석, 관리, 표준준수여부 확인


UML

 

state - 객체가 가진 상태와 상태의 변활을 나타냄

sequence - 객체 사이에 오가는 메세지를 시간순으로 나타냄


유즈케이스

 

연관 - 유즈케이스와 actor의 관계

확장 - 특별한 조건을 만족할 때 수행

포함 - 시스템의 기능이 별도의 기능을 포함

일반화 - 하위 기능이 상위의 기능을 상속받음


선택정렬

 

8,3,4,9,7의 PASS 3의 결과는?

 

현재 요소보다 작은 요소가 있는지 모두 검사 > 있다면 앞으로 넘김

 

1. 3,8,4,9,7

2. 3,4,8,9,7

3. 3,4,7,8,9


자료구조 

 

선형 - 리스트, 스택, 큐

비선형 - 트리, 그래프


블랙박스 테스트(동경원오비)

- 동치분할검사

- 경계값 분석

- 원인-효과 그래프 검사

- 오류 예측 검사

- 비교 검사

 

화이트박스(조기루)

- 조건 검사

- 기초 경로 검사

- 루프 검사


정렬 종류

 

퀵 - 레코드의 많은 자료 이동을 없애고 하나의 파일을 부분적으로 나누어 가면서 정렬

삽입 정렬 - 이미 순서화된 파일에 새로운 하나의 레코드를 순서에 맞게 삽입(가장간단) 

선택 정렬 - 뒤에서 최솟 값을 찾아 계속 앞으로 보냄

버블 정렬 -  두개의 키값을 비교해 레코드 위치 서로 교환

힙 정렬 - 이진 트리를 이용한 정렬바식

2-way - 이미 정렬된 두개의 파일을 하나로 합병하는 방식


해싱함수(제(산),제(곱), 숫, 기, 무)

 

- 제산법

- 제곱법

- 중첩법(폴딩법)

- 숫자 분석법

- 기수 변환법

- 무작위 


스키마 종류

 

- 개념적 : 실제 데이터가 어떻게 저장되었으며, 데이터 간의 관계 표시, 데이터 베이스 전체 정의(한개만 존재)

- 내부 : 개발자 관점의 스키마, 물리적 구조 및 순서 표현

- 외부 : 사용자 관점 or 프로그램 입장의 스키마로 논리적 구조 여러개 존재


카디널리티 - row, 튜플 개수

차수 - 속성의 개수


LOCKING 단위

 

- 병행제어에서 한번에 로킹 할 수 있는 객체의 크기

- DB, 레코드, 필드 등은 로킹 단위가 될 수 있다.

- 단위가 크면 병행수준이 낮아지고, 데이터 베이스 공유도 저하됨 (반비례)

- 단위가 작으면 오버헤드 증가, 병행성 수준 높고, 데이터 베이스 공유도 증가


VIEW

 

- DBA 보안측면에서 사용가능

- 뷰 위에 또다른 뷰 정의 가능

- 독립적 인덱스 불가

- 삽입, 삭제, 갱신 제약이 있음


정규형 순서

 

도부이걸다조

 

비정규

> 도메인 원자값

1NF

> 부분적 함수 종속 제거

2NF

> 이행적 함수 종속 제거

3NF

> 결정자이면서 후보키가 아닌것 제거

BCNF

> 다치 종속

4NF

> 조인종속

5NF


DB 관계대수 연산

 

SELECT - 시그마

PROJECT - 파이

JOIN - > <

DIVISION - %


정규화 오류

 

- 삽상갱 > 삽입, 삭제, 갱신 이상만 존재


응집도

 

오른쪽으로 갈수록 응집도가 높다 > 응집도가 높으면 좋음(결합도가 높으면 않좋음)

 

우 > 논 > 시 > 절 > 교 > 순 > 기

 


OSI 7계층(아파서티네다피/나다)

 

데이터 링크 - 동기화/오류제어/순서제어

물리계층 - 실제 접속 및 절단/기계,전기,기능,절차적 특성 및 규칙 정의

응용계층 - 전자사서함/파일전송

표현계층 - 데이터변환/데이터 암호화/정보 형식 변환


운영체제 제어프로그램( 대감작 (대감자) )

 

- 데이터 관리 프로그램

- 감시 프로그램

- 작업 제어 프로그램


교착상태

 

- 상호배체(mutual exclusion)

- 점유와 대기(hold and wait)

- 비선점(Non-preemption)


IPv4, IPv6

 

IPv4 - 유니캐스트, 멀티캐스트, 브로드캐스트

IPv6 - 유니캐스트, 멀티캐스트, 애니캐스트


TCP - 전송계층(트랜스 포트)

IP - 네트워크 계층


암호와 방식 크게 3가지 (대 해 비)

 

대칭 키 암호화 - AES

해시 암호화 알고리즘 - MD4, MD5, SHA-1 (MMS)

비대칭 키 - RSA (요거 EC2 pem키 받을 때 본 녀석..)


나선형 모형 - 계획 및 정의 > 위험 분석 > 개발 > 고객평가 (계위개고)

 


정보보안을 위한 접근통제 정책 종류(임강역)

 

- 임의적 접근 통제

- 강제적 

- 역할기반


암호화

 

양방향

개인키 

- 스트림 방식 : RC4, LFSR

- 블록 방식 : DES, SEED, AES, ARIA

 

공개키

단방향 - 해시


세션 하이재킹 탐지(BAP)

- 비동기화 탐지

- Ack Storm 탐지

- 패킷의 유실 및 재전송 증가 탐지


정보 보안의 3요소 (기무가)

- 기밀성

- 무결성

- 가용성


XP의 기본 원리

 

- Pair Programmin

- Collective Ownership

- Continuous Integration


럼바우

 

동적 모델링  -> 상태다이어그램

 


 CASE(Computer Aided Software Engineering)의 주요기능

(분 > 설 > 구 > 검  과정에서 사용)

 

- 분석 자동화도구

- S/W 라이프 사이클 전 단계의 연결

- 그래픽 지원

- 다양한 소프트웨어 개발 모형 지원

 


코드 종류

 

- 순차코드 : 자료의 발생순, 크기순, 가나다순 등의 순차적코드

- 블록코드 : 코드화 대상을 미리 파악해 블록으로 구분

- 표의 숫자 코드 : 표현하려는 대상의 의미 제외, 수치만을 모아 만든 것, 중량, 면적, 크기


UML의 3요소

 

- 사물(Thing)

- 관계(RelationShip)

- 다이어그램(Diagram)


소프트웨어의 상위설계(아데시인사)

 

- 아키텍처

- 데이터

- 시스템 분할

- 인터페이스

- 사용자 인터페이스

 

하위

 

- 모듈 설계

- 인터페이스 설계

 


자료사전

 

= 정의

+ 구성

[] 택일

{} 반복

() 생략가능

** 설명


GoF 디자인 패턴 분류(생구행)

 

- 생성패턴

- 구조패턴

- 행위패턴


소스코드 품질분석 도구

 

정적(spcc)

 

- SonarQube, pmd, cppcheck, ccm

 

동적

- valance

 


인터페이스 구현 검증도구 XSFNSW

 

- xUint

- STAF

- FitNesse

- NTAF

- Selerium

- Watir


스키마 종류

 

- 외부 : 개인 또는 개발자 입장에서 본 DB

- 개념 : 모든 응용 프로그램 or 사용자들이 필요로 하는 조직전체 DB에서 단 하나 존재

- 내부 : 저장될 레코드 형식, 데이터 항목 표현, 물리적 순서 등을 나타낸다


트리 순회

 

INORDER(중위) - 맨왼쪽 아래 노드 부터

PREORDER(전위) - 정석

POSTORDER(후위) - 왼쪽 아래부터 맨위 노드가 마지막


그래프 간선수

 

방향 - n(n-1)

무방향 - n(n-1)/2


테스트

 

- 테스트 오라클 : 사전에 정의된 참값 비교, 참, 샘플링, 휴리스틱, 일관성 검사 존재

- 테스트 시나리오 : 순서에 따라 여러개 테스트를 묶은 집합

- 테스트 케이스 : 사용자 요구사항 준수 확인, 조건, 기대, 결과 등으로 이루어짐


저작권 관리

 

- 콘텐츠 분배자 : 암호화된 콘텐츠를 유통

- 콘텐츠 제공자 : 제공하는 저작권자

- 클리어링 하우스 : 키 관리 및 라이선스 발급

- DRM 컨트롤러 : 컨텐츠 이용 권한 통제

- 패키저 : 메타 데이터와 함께 배포가능한 형태로 암호화


저작권 관리 기술(암식라)

 

- 콘텐츠 암호화 및 키관리

- 콘텐츠 식별체계 표현

- 라이선스 발급 및 관리

 


트랜잭션

 

- Durabillity(연속성, 지속성)

완료된 트랙잭션의 결과는 시스템이 고장나도 영구적으로 반영되어야함

 

- Isolation(독립성, 격리성)

둘 이상의 트랜잭션이 병행 되는 경우 하나의 트랜잭션 실행중 다른 트랜잭션의 연산에 끼어들 수 없다.

 

- Consistency(일관성)

시스템의 고정요소는 트랜잭션 수행 전과 후가 같아야함

 

- Atomictity(원자성)

트랜잭션 연산은 모두 실행되거나, 모두 실행되지 않아야함

 


데이터 베이스 성능향상

 

- 인덱스 정규화 : 키 값으로 행 데이터 위치 식별

- 반정규화 : 정규화된 엔티티, 속성 관계를 개발운영 단순화를 위해 중복, 통합, 분리

- 집단화 : 속성들의 세트로 구성되는 속성을 정의함

- 머징 : 둘 이상의 데이터 세트를 단일 데이터세트로 결합

 


키(key)

 

- 후보키 : 릴레이션 구성 튜플을 유일하게 식별할 수 있는 키

- 기본키 : 후보키 중에 선택된 메인키 ( PRIMARY KEY )

- 슈퍼키 : 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키( 유일성 만족, 최소성x )

- 외래키 : 관계를 맺고 있는 릴레이션 참조키


DB 권한 부여

 

GRANT UPDATE ON STUDENT TO PARK


데이터웨어하우스 기본연산

 

사용자의 의사 결정에 도움을 주기위해 DB에 축적된 데이터를 공통의 형식으로 변환에서 관리

 

- roll-up

- slicing & dicing

- drill-up & down

- pivot

- drill-through


UNIX SHELL 변수출력

 

- printenv

- env

- setenv

 


파이썬 함수

 

a = [ 10, 20. 30. 40, 50, 60, 70, 80, 90 ]

a[ :7 :2 ] 

>> :7 = a[0] ~ a[6]

>> :2 = 두 칸씩 띄워라

>> [0, 20, 40 ,60]


공통모듈 재사용 범위(애컴함)

 

- 애플리케이션

- 컴포넌트 재사용

- 함수와 객체

 


자바 접근제어자

 

- private

- default

- public


스토리지 시스템

 

-  DAS : 저장장치와 호스트 기기 사이 디바이스x, 직접연결

-  N-SCREEN : PC-TV-휴대폰 등 여러 단말기로 콘텐츠 끊임없이 이용

-  NFC : 10cm 이내 가까운 거리 통신기술


- SADT : SoftTech사 개발 구조적 요그 분석하기 위해 블록 다이어그램 자동화 도구

- PSL/PSA : 미시간 대학 PSL과 PSA 사용하는 자동화 도구

- SREM : TRW사 개발 우주 국방 시스템 그룹에 의해 실시간 소프트웨어 시스템 요구사항 기술

- HIPO : 하향식 소프트 웨어 개발 문서화 도구


나선형 모델 순서(계위개고)

 

계획 수립 > 위험 분석 > 개발 및 검증 > 고객 평가


소프트웨어 비용 추정모형

 

- COCOMO

- Putnam

- Function-Point

 

>> PERT는 일정관리 기법

 


공개키 암호화 방식

 

- 비대칭 암호기법

- RSA기법

- 키 분배 용이, 관리 해야할 키 개수 적음


공격

 

- XSS : 웹페이지에 악의적인 스크립트 포함, 사용자 실행 유도 > 정보유출

- 랜섬웨어 : 임의로 시스템을 잠그거나 데이터를 암호화 후 금전요구

- 파밍 : 홈페이지 주소를 바꿔 진짜 사이트로 오인하게 하여 접속후 개인정보 탈취

- 피싱 : 메일등으로 공공기관 사칭


- MapReduce : 대용량 분산처리, Google 고안 병렬처리 기법, 임의의 순서로 정렬된 데이터 분산, 다시합침


소프트웨어 프로세스 국제표준

 

SPICE = ISO/IEC 15504


디자인 패턴

 

- Visitor : 각 클래스들의 데이터 구조에서 처리 기능을 분리하여 별도 클래스로 구성, 분기된 처리 기능은 각 클래스를 방문하여 수행

 

- Observer : 한 객체의 상태가 변화하면 객체에 상속된 다른 객체에게 변화된 상태 전달

 

- Bridge : 구현부와 추상층 분리, 서로 독립적으로 확장

 

- Factory Method : 객체 생성을 위한 인터페이스 정의  > 어떤 클래스가 인스턴스화 될지 서브클래스가 결정함


객체지향 설계원칙(SOLID)

 

1. 단일책임(SRP) - 객체는 단 하나의 책임만 가진다.

2. 개방-폐쇠(OCP) - 기존 코드를 변경하지 않고 새로운 기능을 추가할 수 있어야한다.

3. 리스코프 치환 원칙 (LSP) - 일반화 관계, 자식 클래스는 최소한 자신의 부모 클래스에서 가능한 행위는 수행 가능해야함

4. 인터페이스 분리 원칙(ISP) - 인터페이스를 클라이언트에 특화되도록 분리 설계

5. 의존 역전 원칙(DIP) - 의존 관계를 맺을때 변화가 거의 없는 것에 의존하라


인터페이스 요구사항 검토방안 

 

- 동료검토 : 요구사항 명세서 작성자가 설명하고 이해관계자들이 설명을 들으며 결함 발견

- 워크스루 : 검토 회의 전, 명세서 미리배포하여 사전 검토 후 짧은 검토 회의를 통해 결함 발견

- 인스펙션 : 요구사항 명세서 작성자를 제외한 다른 전문가들이 명세서를 확인하면서 결함 발견


제어흐름 그래프 CYCLOMATIC 계산

 

화살표 - 동그라미 + 2 


선택정렬(가장 작은 값을 찾아 위치 서로 교환)

 

37, 14, 17, 40, 35

 

1. 14, 37, 17, 40, 35

2. 14 ,17, 37, 40, 35

3. 14, 17, 35, 40, 37

4. 14, 17, 35, 37, 40

 


형상관리 > 개발 비용을 효율적으로 관리하진 않음...


파티션 유형(범, 해, 조)

 

범위 분할 - 지정한 열값 기준으로 분할

해시 분할 - 해시 함수를 적용한 결과 값에 따라

조합 분할 - 범위 분할 후 해시 함수적용해 분할


인수테스트 종류

 

- 사용자 인수

- 운영상의 인수

- 계약

- 규정

- 알파

- 베타


트리의 차수 - 전체 트리중에서가장 많은 차수


도부이걸다조

3NF 뒤는 BCNF 

 

1NF  > 2NF > 3NF > BCNF > 4NF > 5NF


relation 테이블의 수 

attribute 열의 수 

tuble 행의 수 


분산 데이터 베이스의 투명성(분위지중장병)

 

분산 데이터란? 여러 곳에 분산되어있는 DB를 하나의 가상 시스템으로 사용할 수 있게 한 DB

 

- 분할 투명성

- 위치 투명성

- 지역사상 투명성

- 중복 투명성

- 장애 투명성

- 병행 투명성


릴레이션 

 

똑같은 튜플 포함 X

튜플사이 순서X

속성간 순서 중요X


쉘스크립트 제어문

 

if, for, while

 

repeat_do X 못씀


HRN 방식의 우선순위

 

(대기시간 + 서비스시간)/서비스시간 > 값이 클 수록 우선순위가 높다.


TCP 프로토콜

 

- 신뢰성 있는 연결 지향형 서비스

- 스크린 전송기능 제공

- 순서, 오류, 흐름 제어 기능제공

- 기본 헤더 크기 최소 20byte 최대 60byte / 옵션 값 포함시 40byte추가가능


UNIX 명령어

 

fork - 새로운 프로세스 생성

cat - 파일내용 출력

chmod - 파일이나 디렉토리에 대한 접근권한 변경


Quantum Key Distribution - 양자암호화관련

Digital Rights Management - DRM이라고도 하며, 저작권 관련기술

Grayware - 바리어스, 트로이잔등 악성프로그램들과 달리 사용자 동의를 받아 설치하는 프로그램

Mashup - 웹/앱에서 제공하는 정보 및 서비스를 이용해 S/W나 DB를 만드는 기술


블록 암호화 방식(SIDAR)

- DES, RC5, AES, SEED, IDEA


RIP(Routing Information Protocol)

- 거리 벡터 라우팅 프로토콜이라고도 함

- 소규모 네트워크 환경에 적합

- 최대 홉 카운트 15

- 최단경로탐색 시 Bellman-Ford 알고리즘 사용


합성 중심 : 전자 칩과 같은 소프트웨어 부붐, 블록(모듈)을 끼워 맞추어 소프트웨어 완성(블록구성방법)

생성 중심 : 추상화 형태로 쓰여진 명세를 구체화하여 프로그램을 만듬(패턴구성방법)


보안 방법론

 

- CLASP 

Comprehensive

Lightweight Application

Security Process

개발 생명 주기 초기 단계에 보완강화 목적으로 사용 이미 운영중인 시스템에 적용하기 좋음

 

- CWE

Common Weakness Enumeration

주요 보안 취약점, 보안 분제 정리하는 프로젝트

 

- Seven Touchpoints

소프트웨어 개발 생명주기(SDLC) 각 단계 관련된 7가지 보안 강화 활동 개발자에게 집중적으로 관리하도록 요구


요구 분석(요도모프)

 

요추추출 > 도메인분석 > 모델링 > 프로토타이핑 & 실험

 

기능적요구 - 

비기능적요구 - 성능, 보안, 품질, 안전 등에 대한 요구사항을 말함.

 


클래스 다이어그램

 

Operation - 클래스의 동작을의미, 적용될 메서드, 동작에 의한 인터페이스


럼바우 (객동기)

 

객체 - 객체 다이어그램 객체들 간의 관계정의

동적 - 상태 다이어그램 시간의 흐름, 객체들 사이의 제어 흐름, 동작순서 표현

기능 - 자료흐름도, 프로세스들의 자료흐름 중심 표현


테스트 드라이버

 

- 시험대상 모듈을 호출하는 간이 소프트웨어

- 상향식 통합 테스트에서 사용됨

- 매개변수 전달, 수행후의 결과 보여줌


스택

 

스택이 비었을 땐 Underflow

if Top = 0 Then

Underflow

ELSE {
	remove S(Top)
	Top = Top -1
}

소프트웨어 품질

 

쉽게 수정될 수 있는 시스템 능력 - Portabillity


SQL KEY

 

후보키 - 유일성, 최소성

수퍼키 - 유실성을 만족하는 속성 집합, 최소성 만족하지 않아도됨

            후보키는 수퍼키의 부분 집합임

기본키 - 하나의 릴레이션에는 후보키가 여러개 일 수 있음 여러개의 후보키중 DBA가 지정한 하나의 키

대체키 - 후보키중 기본키를 제회한 나머지 후보키

외래키 - 튜플과의 연관 관계 표시


무결성

 

개체 무결성 - 기본키 값은 NULL일 수 없음

 

참조 무결성 - 외래키 값은 NULL일 숫 없음

 

도메인 무결성 - 속성은 해당 속성에 도메인 속한 값들 중 하나여야 함


함수 종속

 

Y는 X에 함수 종속

 

X -> Y

 


JAVA 연산자 우선순위


로킹 단위가 작으면 로크의 수가 적어진다.

로킹 단위가 크면 병행성 수준이 낮아진다.

로킹 단위가 크면 병행 제어 기법이 복잡해진다.


스케줄링

 

FCFS - 요청이 들어온 순서대로 

 

SSTF - 가장 가까운 실린더에 대한 요청을 우선으로 수행

 

SCAN - 디스크 한 쪽 끝에서 반대쪽 끝으로 처리, 마지막에 도착하면 반대 방향으로 스캔진행

 

S-SCAN - 디스크 한 쪽 끝에서 반대쪽 끝으로 처리, 마지막에 도착하면 처음으

 

C-LOOK 스케줄링 : C-SCAN에서는 양 끝까지 이동하던 것을 요청된 실린더 중 마지막까지만 이동하는 방식으로 처리한다

N단계 SCAN 스케줄링 : SCAN 스케줄링과 같이 진행 방향 상의 요청을 서비스하지만 진행 중에 새로이 추가된 요청은 서비스하지 않고 다음 진행 시에 서비스하는 기법이다.

 

에센바흐 기법(Eschenbach scheme) : 탐색 시간 최적화뿐만 아니라 회전 지연 시간도 최적화하고자 하는 최초의 기법이다.(항공 예약시스템을 위해 개발됨)

 

SLTF 스케줄링(Shortest Latency Time First) : 회전 지연 시간 최적화를 위한 대표적 알고리즘으로 디스크 헤드가 특정 실린더에 도착하면 그 실린더 내의 여러 트랙에 대한 요청들을 검사한 후 회전 지연 시간이 가장 짧은 요청부터 서비스하는 기법이다.

 


python - 귀도 반로섬

c - 켄 톰슨, 데니스 리치

java - 제임스 아서 고슬링


OPT - 가장 오랫동안 사용되지 않을 페이지교체 

FIFO - First In First Out

LRU - 가장 오랫동안 사용되지 않은 페이지 교체

LFU - 참조 횟수가 가장 작은 페이지 교체

MFU - 참조 횟수가 가장 많은 페이지 교체

NUR - 최근에 사용하지 않은 페이지 교체


침입탐지 시스템 IDS

 

HIDS - 어떤 사용자가 접근을 시도하고 어떤 작업을 했는지에 대한 기록을 남긴다

NIDS - 대표적으로 snort가 있음

DMZ  - 외부 인터넷에 서비스를 제공하며 IDS가 설치될 수 있음


대칭 암호화 - AES, SEED

비대칭 암호화 - RSA


COCOMO 모델

 

- 보엠이 고안함

- 소프트웨어 비용산정

- Organic( 50KDSI 이하 ), Semidetached(50 ~ 300KDSI), Embedded(300 이상) //  O > S > E 순서


MQTT - 발행, 구독기반 메세지 프로토콜

MLFQ - 멀티 레벨 피드백 큐 ( 스케줄링 )


SSO - 하나의 시스템에서 인증을 성공하면 다른 시스템에 대한 접근권한도 얻음

SOA - 서비스 지향 아키텍처


비용산정 기법

 

상향식 산정 기법 

- LOC(원시코드) : 프로그램 라인 수 평가, 비관치, 낙관치, 기대치 측정\

> 개발기간 = 노력(인월)/투입인원

> 개발비용 = 노력(인월) x 단위비용

> 생산성 = LOC/노력(인월)

 

- COCOMO : 보헴제시 LOC예측 후 비용 산정 방식에 대입하여 비용산정 

 

- Putnam : 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선을 기초로 함

 

- SLIM : Putnam 예측 모델과 Rayleigh-Norden 곡선을 기초로 하여 개발된 자동화 추정 도구

 

- 기능점수(FP) : Albrecht가 제안 요인별 가중치 부여, 합산해 기능점수 산출

'cs' 카테고리의 다른 글

컴퓨터 구조를 알아야 하는 이유  (0) 2024.03.01
Process와 Thread  (0) 2024.02.27
컴퓨터 구조와 운영체제  (0) 2022.02.19
OSI 7계층  (0) 2022.01.21
소프트웨어의 생명주기  (0) 2021.12.16
Comments