SMALL

TLB?

  • 가장 최근에 참조된 페이지테이블 항목을 저장하고 있는 고속 캐시
  • 가상 주소로 데이터 접근 시, TLB 접근하여 있으면(TLB 히트) 변환 없으면(TLB 미스) 페이지 테이블에 접근하여 TLB 갱신
  • LRU 정책, RANDOM 정책 사용
  • TLB를 사용하면 한번에 물리주소를 변환할수 있어서 좋음(그림보고이해)

 

 

LIST

'전공 > 운영체제' 카테고리의 다른 글

페이지 교체 알고리즘  (0) 2021.07.14
내부단편화, 외부단편화  (0) 2021.07.11
가상메모리  (0) 2021.07.08
Mutex(뮤텍스), Semaphore(세마포어)  (0) 2020.09.17
Starvation(기아현상), Aging(노화)  (0) 2020.09.17
SMALL

가상메모리?

주기억장치의 부족한 물리적 저장공간을 보조기억장치를 이용해서 가상으로 늘려주는 것을 의미(HDD나 SSD를 RAM처럼 사용 하는 것)

 

장단점

  • 메모리 크기 제약으로부터 자유로워짐
  • 병행성 및 CPU 이용률 증가
  • 전반적으로 속도가 느려질 수 있음
  • 저장장치 수명이 짧아짐

 

페이징 폴트 발생 시에 작업완료 시간에 영향을 미치는 요인

페이지 교체 정책(알고리즘)이 잘못 선택되어 질 경우 크게 성능이 떨어진다.

LIST

'전공 > 운영체제' 카테고리의 다른 글

내부단편화, 외부단편화  (0) 2021.07.11
TLB(Translaction-lookaside buffer)  (0) 2021.07.08
Mutex(뮤텍스), Semaphore(세마포어)  (0) 2020.09.17
Starvation(기아현상), Aging(노화)  (0) 2020.09.17
Thread Pool(스레드 풀)  (0) 2020.09.17
SMALL

블랙박스 테스트

  • 명세기반테스트라고도 불리며 내부 코드를 보지 않고 소프트웨어 기능을 확인하는 테스트
  • 요구사항 및 명세서를 기반으로 테스트
  • 내부 코드 구현에 대한 지식없이 입력과 출력에 집중하여 테스트

블랙박스 테스트 종류

  • 동치 분할 검사 : 입력 자료에 초점을 맞춰 검사 하는 방법으로 타당한 입력자료와 그렇지 않은 입력자료를 균등하게 하여 검사
  • 경계 값 분석 : 입력 조건 범위의 경계 값을 검사하는 방식
  • 원인 효과 그래프 검사 : 입력과 출력의 상황을 체계적 분석을 하여 검사하는 방식
  • 오류 예측 검사 : 과거의 경험이나 확인자의 감각으로 검사하는 방식
  • 비교 검사 : 여러 버전의 프로그램에 똑같은 테스트를 하여 같은 결과 값이 나오는지 확인하는 방식

화이트박스 테스트

  • 구조기반테스트라고도 불리며 코드 분석과 프로그램 구조에 대한 지식을 바탕으로 문제 발생 가능성 있는 모듈 내부를 테스트 하는 방법
  • 프로그램 소스 코드의 논리적인 구조를 커버하도록 테스트 케이스를 설계하는 방법

화이트박스 테스트 종류

  • 기초 경로 검사 : 절차적 설계의 논리적 복잡성을 측정할 수 있게 해주고, 실행 경로의 기초를 정의하는데 사용
  • 조건 검사 : 프로그램 모듈 내에 있는 논리적 조건을 검사하는 검사 사례 설계 기법
  • 루프 검사 : 프로그램의 반복 구조에 초점을 맞춰 실시하는 검사 사례 설계 기법
  • 데이터 흐름 검사 : 프로그램에서 변수의 정의와 변수 사용의 위치에 초점을 맞춰 실시하는 검사 사례 설계기법
LIST

'전공 > 테스트' 카테고리의 다른 글

워크쓰루, 인스펙션, 공식검토  (0) 2020.07.05
CSTS요약집  (17) 2019.08.23
SMALL

TCP와 UDP는 모두 전송 계층 프로토콜이다.

TCP 특징

  • 신뢰성 있는 전송, 에러 제어
  • 순서 제어
  • 완전이중 방식
  • 연결 지향
  • 3-Way Handshaking
  • 흐름제어
  • 바이트 스트림을 통한 연결
  • 세그먼트 패킷
  • 이메일 등에서 사용

UDP 특징

  • 비신뢰성
  • 비접속형 : 전달되는 패킷에 대한 상태 정보 유지 안함
  • TCP에 비해 간단한 헤더 구조
  • TCP에 비해 빠른 전송
  • 메시지 스트림을 통한 연결
  • 데이터그램 패킷
  • 실시간 영상 서비스에 사용
LIST

'전공 > 네트워크' 카테고리의 다른 글

물리적 토폴로지  (0) 2021.08.10
Zero Window  (0) 2021.07.08
HDLC  (0) 2021.06.10
네트워크 설정  (0) 2020.06.30
Well Known Port  (0) 2018.07.12
SMALL

정의

HDLC는 전이중과 반이중 통신을 모두 지원하는 비트 지향 프로토콜로 점대점 링크 및 멀티 포인트 링크를 위하여 ISO에서 개발한 프로토콜

 

특징

  • 반이중 및 전이중 통신을 지원
  • 동기식 전송 방식
  • 오류 제어를 위해 Go Back N과 선택적 재전송 방식을 사용
  • 흐름 제어를 위해 슬라이딩 윈도우 방식을 한다.
  • 사용하는 문자 코드와 상관이 없으며 비트 삽입에 의해 투명한 데이터 전송을 보장
LIST

'전공 > 네트워크' 카테고리의 다른 글

Zero Window  (0) 2021.07.08
TCP, UDP  (0) 2021.06.10
네트워크 설정  (0) 2020.06.30
Well Known Port  (0) 2018.07.12
Distance Vector와 Link State  (0) 2018.07.04
SMALL

CNN(합성곱신경망 : Convolution Neural Network)

  • CNN은 데이터의 특징을 추출하여 특징들의 패턴을 파악하는 구조
  • 이미지 인식, 정보 추출, 영상 분류를 하는 분야에 주로 사용되고 있음
  • Convolution 과정과 Pooling 과정을 반복하여 진행
  • Convolution은 이미지에 필터를 합성곱 한것

  • Pooling은 Convolution 과정을 거친 layer의 사이즈를 줄여주는 과정

RNN(순환신경망 : Recurrent Neural Network)

  • RNN은 반복적이고 순차적인 데이터 학습에 특화된 인공신경망의 한 종류
  • 음성 파악이나 텍스트의 앞 뒤 예측 등 순차적인 데이터에 주로 사용되고 있음
  • 현재의 학습과 과거의 연결을 가능하게 하며, 시간에 종속되어짐
  • 순환구조가 들어있으며, 과거의 학습을 Weight를 통해 현재 학습에 반영
LIST

'전공 > 인공지능' 카테고리의 다른 글

데이터분석 프로세스  (0) 2021.06.07
지도학습, 비지도학습, 강화학습  (0) 2020.09.11
SMALL

정의

소프트웨어 설계할 때 자주 생기는 문제들을 접할 때 정형화된 설계 템플릿을 사용하여 해결할 수 있게 하는 것이다.

장점

  • 개발자 간의 원활한 의사소통
  • 소프트웨어 구조 파악 용이
  • 재사용을 통한 개발 시간 단축
  • 설계 변경 요청에 대한 유연한 대처

단점

  • 객체지향 설계/구현 위주
  • 초기 투자 비용 부담
LIST

'전공 > 디자인패턴' 카테고리의 다른 글

SOLID 원칙  (0) 2021.06.07
싱글턴 패턴  (0) 2018.05.11
SMALL

데이터 분석 프로세스

  1. 요건 정의 : 전체 프로세스 중 가장 중 가장 중요한 부분, 비즈니스 이슈에 대한 기초분석 진행(분석 과정 설계)
  2. 모델링 : 요건 정의에 따라 분석기법을 적용하여 모델 개발
  3. 검증 및 테스트 : 운영상황에 실제 테스트 하기 + 비즈니스 영향도 분석
  4. 적용 : 운영 시스템에 적용 + 주기적인 리모델링

금융회사에서의 데이터 분석 프로세스

  • 금융 빅 데이터는 금융 분야의 데이터로 주로 거래 시장 데이터와 공공정보, 뉴스정보, 공시정보, 소셜 데이터 등 금융에 관련된 데이터를 포함한다.(거래시장 데이터는 정형화된 데이터, 공공정보 데이터는 비정형화된 데이터)
  • 최근 비정형데이터의 증가량이 커짐으로써 텍스트마이닝, 오피니언마이닝, 소셜네트워크 분석, 클러스터링 기법들이 활용되고 있음
  • 데이터 시각화 기법을 통해 데이터를 직관적으로 이해할 수 있고, 데이터 기반의 의사결정을 할 수 있을 것이다.
  • 금융 빅 데이터와 인공지능을 이용하여 좀 더 빠르고 정확하게 분석할 수 있고 체계적으로 리스크를 관리할 수 있다.
LIST

'전공 > 인공지능' 카테고리의 다른 글

CNN, RNN  (0) 2021.06.08
지도학습, 비지도학습, 강화학습  (0) 2020.09.11
SMALL
package test;

public class 삽입 {
	
	
	
	private static int arr[] = {4,9,7,1,5};
	public static void main(String[] args) {
		
		for(int i=1; i<5; i++) {
			int val = arr[i];
			for(int j= i-1; j>=0; j--) {
				if(arr[j+1] < arr[j]) {
					arr[j+1] = arr[j];
				} else {
					break;
				}
				arr[j] = val;
			}
			print();
		}
		
	}
	
	
	public static void print() {
		for(int i=0; i<5; i++) {
			System.out.print(arr[i]);
		}
		System.out.println();
	}
}
LIST

'전공 > 자료구조' 카테고리의 다른 글

원형 큐(Circular queue)  (0) 2021.07.14
Stable Sort, Unstable Sort  (0) 2021.07.13
B-tree, B+tree  (0) 2021.06.05
AVL 트리 vs Red Black 트리  (0) 2021.06.05
정렬 시간복잡도  (0) 2021.06.05
SMALL

SRP(Single Responsiblity Principle, 단일 책임 원칙)

  • 클래스나 매서드는 단 하나의 책임만을 가져야 한다.
  • 대표적으로 남자, 여자에 대한 군번 속성을 생각하면 된다. 그러므로 공통 속성을 잘 골라서 추상화를 해야 한다.

OCP(Open-Closed Principle, 개방 폐쇄 원칙)

  • 기존의 코드를 변경하지 않으면서, 기능을 추가할 수 있어야 한다
  • 자주 변경될 것과, 변경되지 않을 것을 엄격히 구분
  • 추상화와 다형성을 잘 해야 한다.

LSP(Liskov Substitution Principle, 리스코프 치환 원칙)

  • 자식 클래스는 부모 클래스를 대체할 수 있어야 한다.
  • 자식 클래스는 부모 클래스의 기능을 재정의 하지 않고 확장만 수행하도록 해야 한다. (Override를 최소한 하는 것)
  • 대표적으로 Rectangle, Square 예시를 생각하면 된다.

ISP(Interface Segregation Principle, 인터페이스 분리 원칙)

  • 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 않아야 한다.
  • SRP는 클래스 단일책임을 중점이라면, ISP는 인터페이스 단일책임이 중점이다.
  • 인터페이스를 사용자에 입장에서 분리시키면 된다.

DIP(Dependency Inversion Principle, 의존 역전 원칙)

  • 의존 관계를 가질 때, 변화가 쉬운 것(클래스)보다 어려운 것(인터페이스, 추상 클래스)에 의존해야 한다.
  • Spring DI(Dependency Injection) 기술을 생각하면 된다.
LIST

'전공 > 디자인패턴' 카테고리의 다른 글

디자인패턴  (0) 2021.06.07
싱글턴 패턴  (0) 2018.05.11

+ Recent posts