2022.11.02(수)
오늘 한 일
- Link 계층 복습
- GCD 복습
- 픽셀, BMP
새로 배운 것
- 사용중인 스마트폰의 해상도와 캡처 시 BMP으로 저장하면 어떻게 될지 알아봤다.
아이폰11pro -> 2436x1125픽셀 -> 컬러이미지기 때문에 *24bit(3byte, 채널 3개!)를 하면 65772000bit -> 8221500Byte -> 8028.8KByte -> 7.84MByte가 된다.
- 1픽셀은 8바이트이며 이미지를 이루는 가장 작은 단위다.
컬러영상, 흑백 영상, 이진(Binary) 영상이 있다.
- JPEG와 PNG 파일의 차이점 중 흰색 배경 화면이 필요하냐 없냐로 나뉘는 경우도 있는데 이는 PNG에는
투명도
를 담당하는 알파 채널
이 1바이트로 따로 있기 때문이다. 그래서 PNG를 알파 채널이 없는 JPEG로 변환하면 흰색 배경이 남게되는 것! 알파채널 기억해두자.
- 링크 계층에서 CSMA/CD 방식에서 딜레이를 2^m-1만큼씩 Binary Backoff 하는 이유는 해당 호스트에서 frame을 보내고 충돌이 발생하면 '몇 명'이 동시에 보낸 것인지는 모르기 때문에 시간대를 점점 늘린다.
- GCD의 Serial, Concurrent, Sync, Async 역할은 알아도 어떤 시점에 수행되는지 매번 헷갈린다.
Sync, Async는 Dispatch Queue에 작업을 등록하는 주체에 대한 설정이고, Serial, Concurrent는 이미 Queue에 들어온 작업을 어떻게 스레드로 처리하냐에 대한 설정이다.
만약, Async+Serial 조합이라면 Queue에 작업을 순서 상관 없이 추가하며, Serial 특성으로 Queue에 등록된 순서대로 하나씩 처리한다.
내일 일정
- SwiftUI 애니메이션 구현
- Network Transport, Link 계층 복습
- 알고리즘 문제풀기