일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- Trino
- CVAT
- kubeadm
- Python
- JavaScript
- Operating System
- MAC address
- docker
- Vision
- CSV
- helm
- zookeeper
- Spring
- kubectl
- AWS
- aws s3
- log
- Network
- java
- EC2
- ip
- tcp
- kubernetes
- PostgreSQL
- jvm
- Kafka
- OS
- Packet
- grafana
- airflow
- Today
- Total
JUST WRITE

The Law of Demeter Loosely Coupled 객체 지향 디자인에서 결합 정도는 하나의 Class가 다른 Class의 설계에 얼마나 영향을 미치는가이다. 다른 말로 한 Class의 변경으로 다른 Class도 얼마나 자주 변경되는가이다. Tight Coupling은 두 Class가 함께 변경되는 경우가 많다는 것이고, Loosely Coupling은 대부분 독립적이다. 일반적으로 테스트, 유지보수 측면에서 유리한 Loosely Coupling을 추천한다. The Law of Demeter 디미터의 법칙은 Object-oriented programing: an objective sense of style에서 처음 소개되었다. 디미터의 법칙을 한마디로 말하면,,, Don't talk to st..

이 글은 Baeldung 사이트 'Checked and Unchecked Exceptions'를 해석, 정리한 글입니다. Exception은 크게 Checked Exception과 Unchecked Exception으로 나누어 진다. Checked Exception Checked Exception은 일반적으로 Program 통제 밖에 있는 Error를 나타낸다. Java는 Compile 시점에 Checked Exception을 확인한다. Java에서 Checked Exception은 IOException, SQLException, ParseException 등이 있다. throws 키워드를 써서 Checked Exception을 선언해야 한다. private static void checkedExcept..

이 글은 KOCW 강좌 중 경성대학교 양희재 교수님의 '운영체제' 강의를 정리한 글입니다. Disk Scheduling Hard Disk에서 원하는 file에 접근하기 시간은 아래 3가지이다. Seek Time Rotational Delay Transfer Time 이 중에서 Seek Time이 차지하는 비중이 제일 크다. Multi-Programing 환경에서 Process에서 file에 접근하려는 요청이 동시에 들어올 수 있다. Disk Queue에서 이러한 요청들을 저장해두고 처리한다. Disk Queue에 들어온 요청들을 효율적으로 처리하기 위한 방안을 살펴보려 한다. First-Come First-Served Scheduling FCFS Scheduling FSFS는 Disk Queue에 들어온..

이 글은 KOCW 강좌 중 경성대학교 양희재 교수님의 '운영체제' 강의를 정리한 글입니다. File Allocation Hard Disk 구조는 아래와 같다. platter -> 실제 Data를 기록하는 자성을 가진 원판 track -> platter의 동심원을 이루는 하나의 영역 sector -> track을 여러 개로 나눈 영역, 일반적으로 setor의 크기는 512 bytes. cylinder -> 모든 platter에서 같은 track 위치의 집합 위에서 sector 여러개를 묶어 block이라고 한다. Hard Disk는 block 단위로 읽고 쓰기 때문에 Block Device라고도 한다. 비어 있는 block들의 모임으로 볼 수도 있어서 pool of free blocks라고도 한다. 운영체..

이 글은 KOCW 강좌 중 경성대학교 양희재 교수님의 '운영체제' 강의를 정리한 글입니다. Allocation of Frames Thrashing 일반적으로 Memory에 Load 된 Process의 수가 많을수록 CPU 이용률이 오를 거라 예상된다. 하지만 일정 범위를 넘어서면 CPU 이용률이 감소한다. 아래 그래프에서 일정 Process 수에서 CPU 이용률이 떨어진는데 이와 같은 현상을 Thrashing이라 한다. Thrashing이 발생하는 이유는 빈번하게 Page in/out이 일어나기 때문이다. Process의 수가 많아질 수록 Memory에 빈 공간이 줄어든다. Memory의 비어 있는 Frame이 줄어들면서 Backing Store에서 Page in/out 하는 경우가 많다. Thrashi..

이 글은 KOCW 강좌 중 경성대학교 양희재 교수님의 '운영체제' 강의를 정리한 글입니다. Page Replacement Demand Paging에서 필요한 Process의 Page를 Backing Store에서 가져온다. Memory에 Page가 Load 되다 보면 Memory가 가득 차게 된다. Memory가 가득 찼을 때, Backing Store에 Page를 몰아내고(Page-out) Page를 몰아내서 얻은 빈 공간에 필요한 Page를 가져온다.(Page-in) 이 때, 공간을 만들기 위해 Backing Store로 간 Page를 Victim Page라 한다. Victim Page I/O 시간을 절약하기 위해서 기왕이면 변경 사항이 없는 Page를 Vitim Page로 한다. 변경사항이 있게 되..