cs 24

객체지향 설계

https://velog.io/@dkim1540/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EA%B3%B5%ED%95%99-Objectorientation 소프트웨어 공학 - Object_orientationOOT?객체지향(object orientation)에는 4가지 키워드가 있다.등장 배경HW의 부품처럼 SW도 modulization을 통해 각 모듈이 독립적으로 동작하도록 설계전체 기능을 모듈 단위로 분해하고각 모듈의 인터페이velog.io velog에 작성해두었다.

VAE

저번에 GAN에 대해 정리하였다. 오늘은 이보다 좀 더 앞선 VAE에 대해 다뤄보려 한다.VAE는 Autoencoder에 Variational을 붙인 Variational Autoencoder의 약자이다. 그렇다면 Autoencoder가 뭘까?오토인코더는 아래와 같은 구조를 갖고 있다. 저 네모난 블랙박스를 기준으로 왼쪽 Encoding 부분과 오른쪽 Decoding 부분으로 나눌 수 있다.왼쪽에 Input data를 넣어 encoding을 하여 더 작은 일명 'feature vector'로 만든다.encoding layer는 conv layer로 구성된다.(정보는 정보대로 두며 크기를 줄이니까 당연히 conv 레이어일 것이다.) 이제 이 feature vector를 decoder로 다시 원상복구한다...

Generative Model(aka. GAN)

# Generative Model 생성형 모델은 지금까지 배운 CV와 학습 형태가 다르다. 우선 타겟 라벨이 없다. 이에 우리가 아는 형태의 Loss를 만들 수 없어 GD가 불가능하다.그럼 어떻게 만들까? 먼저 GAN은 확률분포와 샘플링을 기반으로 한다. 여기서 확률분포란 각 경우들이 나올 수 있는 확률을 나타낸 분포로, 주사위의 각 눈이 각각 1/6 확률로 나오기에 확률분포는 위와 같이 그려지게 된다. 샘플링은 위에서 실제로 추출한 것. 즉, 위에서 샘플링을 통해 1~6 사이의 하나로 나오게 될 것이다. 주사위를 두 번 굴려 나오게 될 눈의 합의 확률분포는 위와 같다. 정리하면, 우리는 어떤 확률 분포를 구해서, 이 확률 분포에서 랜덤으로 하나 뽑는 것을 샘플링으로 볼 수 있다. 이제 생성형 AI..

Page Fault algorithms

Page Fault algorithms메모리는 용량이 한정되어 있다. 페이지 프레임도 마찬가지다. 일반적으로 페이지 수가 페이지 프레임 수보다 많고 특정 페이지를 읽으려고 했을 때 페이지 프레임이 꽉 차있을 수 있다.이 때 페이지 프레임을 비우게 되는 Page Fault가 발생한다.여기서 자주 쓰이는 페이지를 삭제하는 것은 금방 다시 요청할 것이기에 좋지 않고, write가 있던(dirty bit가 1인) 페이지라면 디스크에 꼭 옮겨놓은 뒤 삭제해야 한다. Optimalpage Replacement algorithms이상적이지만 적용불가하여 성능평가의 지표로만 사용된다.간단하게 가장 나중에 참조될 페이지를 삭제하는 것이다. 프로세스를 먼저 실행시킨 뒤 로그를 참조하여 가장 먼 미래에 참조될 페이지를 내보..

cs/운영체제 2025.11.16

메모리

메모리와 프로세스CPU는 작업을 하며 계속 메모리에서 데이터를 읽어와야 한다. 이 때 CPU에서 메모리를 오가는 속도가 빠른 것이 컴퓨터의 성능을 가를 것이다. 따라서 메모리에서 데이터를 읽어올 때 우리가 자주 쓰는 것과 자주 쓰지 않는 것, 앞으로 쓰이게 될 것으로 예상되는 데이터들을 미리 CPU에 가깝게 위치시키는 등 여러 가지 방식을 고안하게 되었고, 이에 메모리는 크게 3계층 구조로 이루어지게 되었다. 용량은 작고 비싸지만 CPU에서 물리적인 위치가 가깝고 속도가 제일 빠른 Cache적당한 용량에 적당한 가격, CPU로부터 물리적인 거리가 적당한 Main Memory큰 용량에 저렴한 가격, CPU에서 물리적으로 제일 멀며 속도가 제일 느린 Disk 이 메모리 계층 구조를 관리하는 것이 OS의 m..

cs/운영체제 2025.10.28

802.11 WiFi 5, 6, 7

WiFi가 지금과 같이 엄청 빨라질 수 있었던 이유가 뭘까?앞서 정리한 QAM과 같은 모듈레이션 기법, 기본적으로 넓어진 대역폭이 있지만 두 가지가 더 있다.OFDM과거에는 FDM에서 신호끼리 간섭이 나지 않도록 간격을 조금 벌리는 이른바 가드 밴드라는 기법이 있었다. 이는 손해보는 기법이기에 상당히 좋지 않았다고 한다. 그런데 서로 분할된 여러 대역폭을 동시에 사용하는 MCM(multi - carrier - modulation) 기법이 나오면서 겹쳐도 상호 간섭이 일어나지 않게 중첩시키는 방법을 찾아냈다. 이는 동일한 대역폭을 2배 조금 넘는 효율을 볼 수 있도록 한다. 802.11a 가 OFDM 기법이 처음 적용된 WiFi 버전이다. 48개의 서브캐리어가 존재하고 250K의 symbol rate를 갖..

cs/데이터통신 2024.12.06

CSMA와 이더넷 스위치

CSMA(carrier sense multiple access)앞서 aloha 모델에 대해 공부해보았는데 전송 효율을 극대화하기 위해 요즘은 CSMA/CD 방식을 주로 사용한다.CSMA 방식은 그냥 노드들이 현재 전송중인지에 대한 여부를 채널을 통해 주고받는거다. 만약 채널이 비어있다면 전송을 시도할 것이고 채널을 사용중이라면 전송을 미룰 것이다. 뒤에 붙어 있는 CD는 collision detection의 약자인데 짧은 시간동안 충돌을 감지하여 감지 즉시 전송을 중단하여 시간을 보존하는 것이다. 이 CD는 유선은 쉽지만 무선은 어렵다.CSMA 방식에는 총 세 가지가 있다.Nonpersistent CSMA채널이 비어있으면 즉시 전송을 시도한다.채널이 사용중이라면 random-backoff 방식으로 기다린..

cs/데이터통신 2024.12.06