전체 글
-
커널(Kernel)Computer Science 2020. 12. 9. 23:41
커널은 컴퓨터의 운영체제의 핵심이 되는 컴퓨터 프로그램의 하나로, 시스템의 모든 것을 완전히 통제한다. 운영 체제의 다른 부분 및 응용 프로그램 수행에 필요한 여러가지 서비스를 제공한다. 소프트웨어와 하드웨어간의 커뮤니케이션을 관리하는 프로그램 운영체제의 핵심 구성요소로서 입출력을 관리하고 소프트웨어로부터의 요청을 컴퓨터에 있는 하드웨어(CPU, 메모리, 저장장치등)가 처리 할 수 있도록 요청을 변환하는 역할을 한다. 이렇게 하드웨어를 관리하고 필요한 프로세스를 나눠주는 등 여러 시스템 자원을 제어하고, 컴퓨터 부팅시 부트로더에 의해 로드되어 항상 메모리에 상주하게 됩니다. 커널의 역할 보안 커널은 컴퓨터 하드웨어와 프로세스 보안을 책임진다. 자원 관리 한정된 시스템 자원을 효율적으로 관리하여 프로그램의..
-
블록체인 관련 용어 / DappBlockChain 2020. 12. 7. 19:01
블록체인 관련 개념 스마트 컨트랙트 제 3의 보증기관없이 개인 간(P2P) 계약을 체결할 수 있도록 하는 디지털 계약 기능. 서면으로 이루어진 계약은 코드로 구현하고 특정조건이 충족되었을 때 해당 계약을 이행하도록 하는 script 탈중앙화(Decentralization) 블록체인의 탈중앙화란 기존 중앙 집중화된 시스템의 서버-클라이언트 관계가 아닌 노드와 노드 간의 자율적인 연결때문에 P2P방식으로 작동되는 시스템. DID(Decentralized Identity) DID는 중앙 시스템에 의해 통제되지 않고 개개인에게 자신의 정보에 대한 통제권을 가질 수 있게 하는 기술이다. 분선신원확인 또는 탈중앙 신원 인증이라고 불린다. KMS(Key Management System) 키관리시스템으로 불리며, 주소..
-
-
Garbage Collector 이해Computer Science 2020. 12. 1. 01:59
JVM 운영체제 메모리영역에 접근하여 메모리를 관리하는 프로그램 GC 동적으로 할당된 메모리의 사용하지 않는 영역을 해제하는 기능 Stack 정적으로 할당한 메모리 영역 원시타입 데이터 값을 할당 Heap영역에 생성된 Object 타입의 데이터 참조 Heap 동적으로 할당된 메모리 영역 모든 Object 타입의 대에티가 할당 Heap 영역의 object를 가리키는 참조변수가 stack에 할당 main(){ int a = 10; int b = 20; int sum = a+b; String text = "던"; } main() 메서드가 실행될때 a, b, sum 변수는 스택메모리에 할당이됩니다. text의 참조값도 스택매모리에 할당됩니다. heap 메모리에는 text의 참조변수가 할당이 됩니다. main()..
-
[Android] 해상도와 dpi, px, dp, dip, spProgramming/Android 2020. 12. 1. 01:08
안드로이드는 아이폰과 달리 다양한 해상도를 지원한다. 1. dpi (Dot Per Inch) 1인치당 픽셀 수. 물리적인 단위인 1inch(2.54cm)에 몇 픽셀이 들어가는가를 나타내는 단위 Low density (120dpi) : ldpi Medium density (160dpi) : mdpi (기본) High density (240dpi) : hdpi Extra High density (320dpi) : xdpi xxhdpi : 480dpi xxxhdpi : 640dpi 2.px (pixel) 스크린의 실제 픽셀 단위, 실제 크기나 밀도와 관련없다 절대적 표시 단위 mdpi에서 1dp = 1px 이다. ldpi : 1dp = 0.75px mdpi : 1dp = 1px hdpi : 1dp = 1.5p..
-
Dynamic Programming코딩테스트 2020. 11. 30. 19:19
다이나믹 프로그래밍 (동적 프로그래밍) 기억하기 프로그래밍이라는 단어가 더 잘 어울릴 수도. DP에서 프로그래밍은 코딩하는 것이 아니라, 테이블을 이용하여 문제를 해결하는 방법 부분 문제의 해를 결합하여 큰 문제를 해결해 나간다. (분할정복기법) 이 때 부분문제는 무조건 계산하는 것이 아니라 테이블을 통해 재사용. 즉, 한 번 계산한 문제는 다시 계산하지 않는다 큰 문제를 한번에 해결하기 힘들 때 작은 여러개의 문제로 나눠 푸는 기법 그 문제들을 재계산하지 않고 값을 저장해두었다가 재사용하는 기법 (불필요한 계산 줄이기) 재귀적으로 생각하기 DP문제를 풀기 위해서는 점화식(인접한 항들 사이의 관계식)을 세워야 한다. 메모제이션(동적 프로그래밍 기법 중 하나) 반복적으로 계산되는 것들의 계산 횟수를 줄이기..
-
Android LifeCycleProgramming/Android 2020. 11. 30. 19:07
1. onCreate() 2. onStart() -> onRestoreInstanceState() 3. onResume() 4. onPause() -> onSaveInstanceState() 5. onResume() 6. onStop() 7. onDestroy MainActivity에서 DetailActivity 호출했을 때 호출되는 LifeCycle Method 순서 [Main]onPause() [Detail]onCreate() [Detail]onStrat() [Detail]onResume() [Main]onStop() -> Detail의 라이프사이클 작업이 끝난 후 호출됨. DetailActivity 종료 후 MainActivity가 보여질때, LifeCycle Method 호출 순서 [Detail]..
-
PNG와 JPG 파일 차이Computer Science 2020. 11. 30. 17:59
1. PNG와 JPG차이 PNG PNG 파일은 비손실 압축방식을 사용하여, 원본이 훼손되지 않는다. 투명배경이 지원된다. 문자 혹은 아이콘 등 인공적으로 만든 그래픽 이미지에 주로 사용한다. JPG JPG 파일은 손실 압축을 사용하여 원본이 훼손된다. 풍경사진, 인물사진 등 복잡한 사진은 JPG 파일로 저장하는 것이 좋다. JPEG 알고리즘은 사람의 눈에 거슬리지 않을 정도로 원본을 훼손해 압축효과를 극대화시킴. 압축과정에서 품질저하가 발생하는 손실압축 방식. 저장 시에 압축률을 조절할 수 있고, 압축률에 따라 용량에 영향. 용량을 축소할 수 있기 때문에, 인터넷 상에서 많이 사용 공통점: 비트맵 방식 이미지를 아주작은 화소(픽셀)로 분해하고, 각 화소의 색상과 위치를 기록해 저장하는 방식. 비트의 지도..