OS, Linux, Network
# 프로세스와 쓰레드 차이
프로세스 - 실행되고 있는 프로그램의 개체. CPU 시간이나 메모리 등 시스템 장원이 할당되는 독립적인 개체. 다른 프로세스와 상관 없이 독립적으로 자원을 할당 받음. 프로세스 간의 통신을 위해선 파이프, 파일, 소켓 등을 사용하여 통신하여야 함
쓰레드 - 프로세스 안에 존재하여, 프로세스의 자원을 공유하는 개체 흔히 경량 프로세스라고 부름 각 쓰레드는 별도의 레지스터와 스택을 갖고, 힙 영역은 공유.
# System call이란?
# Shared memory?
# 해쉬알고리즘의 종류 및 특징?
MD5 SHA-1
# Swap memory는 무엇이고 언제발생하는가?
# Java에서 Memory mapped file은 언제 사용하는가?
# OSI 7 layer
# Http연결시 세션과 쿠키 차이점
# Http의 Keep alive 개념?
# Get, Post 차이점
# TCP vs UDP
# L7 switch란?
Java Programming
# Overload와 override차이
오버로딩 - 똑같은 함수에 매개변수를 변경하여 선언하는 법
오버라이딩 - 부모 클래스로 부터 상속 받은 메소드의 내부 구현 로직을 변경하는 방법
# Hashtable, hashmap 차이
# ArrayList, LinkedList 차이
# JVM GC 종류 및 원리
# Java NIO(new io)?
# Java refrection?
# servlet?
# Singleton패턴이 무었이고 어떨때 사용가능한가?
# Threadsafe란?
# mutex와 semaphore 차이?
프로세스 혹은 쓰레드 간의 통신 시에 shared memory 등을 쓰는 경우 하나의 자원에 두 개 이상의 프로세스 혹은 쓰레드가 접근하는 경우에 문제가 발생. 이를 제어하기 위해 쓰레드에서는 뮤텍스를 사용하며, 프로세스에서는 세마포어를 사용 함
뮤텍스 - 상호배제라고도 하며, Critical Section을 가진 스레드의 Running time이 서로 겹치지 않도록 각각 단독으로 실행하게 하는 기술 synchronized 또는 lock을 통해 해결
세마포어 - 리소스 상태를 나타내는 간단한 카운터 공유 리소스에 접근할 수 있는 프로세스의 최대 허용치만큼 동시에 사용자가 접근하여 사용할 수 있음.
# Spring boot란? 왜 쓰는가?
# ORM이란?
# Design pattern아는 것 나열 및 설명
# String, StringBuffer, StringBuilder 차이
# Java에서 int와 long차이
# Gradle vs Maven
DevOps
BigData
'개발이야기' 카테고리의 다른 글
결혼식 청첩장 Github blog로 세련되게 만들기. 후기! (380) | 2019.06.04 |
---|---|
Java에서 method작성시 파라미터 개수를 5개미만으로 해야하는 이유?? (270) | 2019.05.03 |
특정 문자가 들어간 line만 뽑아내는 정규식 (405) | 2019.04.01 |
지난 2년(17, 18년) 동안의 개발 블로그 운영 회고 (372) | 2018.12.04 |
Amazon web service 한달 최대 2,500원으로 마음껏 쓸 수 있는 서버 호스팅 하기(Reserved Instance) (1105) | 2018.07.20 |
컨트리뷰터가 되기 위해 opensource에 pull request날린 후기 #2 - pull request 날리기 (257) | 2018.07.19 |