목록IT (99)
LISTORY
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 관련 유투브 강의 정리이다. 저번 시간에 이어 비동기 I/O에 대해 정리를 계속하겠다. YouTube 주소 : 비동기 I/O의 이해 비동기 I/O의 이해 우리가 이제껏 다룬 내용은 전부 동기 I/O이다. ⊙ 동기 I/O? write라는 함수가 있다. 이는 데이터를 보내는 함수이다. 이 함수를 호출하는 순간 데이터의 전송이 시작된다. wirte 함수가 끝나는 순간은 데이터 전송이 끝나는 순간이다. 즉, 함수의 호출과 데이터 전송이 동기화, 함수의 반환과 전송의 끝이 동기화 되어있다. 이게 바로 동기화 I/O이다. 그럼 비동기는 무엇일까 ⊙ 비동기 I/O? wirte 함수를 호출하여 데이터 전송이 시작하는 것 까지는 똑같다. 하지만 함수를 반환하는 시점이 데이터 ..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 관련 YouTube 강의 정리이다. 오늘 정리할 부분은 비동기 I/O와 APP 파트이다. YouTube 주소 : 비동기 I/O와 APP 비동기 I/O와 APP 비동기 I/O 에 대해 공부하기 앞서 I/O와 CPU 클럭의 관계에 대해 알아보겠다. ⊙ I/O와 CPU 클럭의 관계 일반적으로 CPU 클럭이 높아지면, 높은 퍼포머스를 보여준다. I/O도 일반적으로 클럭 속도가 빠르면 빨리진다. 하지만 실제 I/O는 CPU 클럭과는 별도로 BUS 클럭에 의존도가 높다. 보편적으로 시스템 디자인 시, CPU 클럭이 높으면 그만큼 I/O 클럭(bus 클럭)이 높은것이 일반적이다. 그렇다면 I/O 클럭을 포함하는 CPU클럭, 즉, 시스템 클럭이 I/O와 어떤 관계를 갖을까?..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 관련 유투므 강의 내용 정리이다. 오늘 정리할 내용은 Dynamic Linking Library 이다. YouTube 주소 : Dynamic Linking Library Dynamic Linking Library C 런타임 라이브러리 설정 우리가 보통 c런타임에 사용하는 printf 등은 라이브러리에서 제공받는다. ⊙ Static Library vs DLL - 정적 라이브러리 정적으로 라이브러리를 링크하면 실행 파일에 라이브러리가 들어가는 것이다. 똑같은 라이브러리 임에도 불구하고 세개의 실행파일이 다르기 때문에 각각이 라이브러리를 저장하고 있다. - DLL 라이브러리를 가지고 있지 않고, 하나의 라이브러리를 실행 파일이 공유하는 방식이다. 공유하려면 실행파일..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 관련 유투브 강의 정리이다. 오늘 정리할 내용은 MMF(Memory Mapped File) 이다. YouTube 주소 : MMF(Memory Mapped File) MMF(Memory Mapped File) ⊙ MMF 개념 메모리를 파일에 매핑시키겠다는 개념이다. 파일의 일부 메모리 공간을 프로세스의 가상메모리에 연결시킨다. 연결이 일단 되면 프로세스의 가상메모리에 내용을 쓰면 그 위치만큼 이동하여 파일에 데이터를 대신 써준다. 이점은 일단 성능 이슈도 있지만, 프로그램의 편리성에 이슈를 둘 수 있다. 만일 데이터를 sorting 해야 한다고 치면 파일에 있는 데이터를 메인메모리로 불러들여 sorting하고 다시 저장해야한다. 하지만 이 기능을 사용한다면, 데..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 관련 유투브 강의 정리이다. 오늘 정리할 내용은 메모리 관리 부분이다. YouTube 주소 : 힙 컨트롤 힙(Heap) 컨트롤 가상 메모리 공간을 commit, reserve, free 상태로 둘 수 있었다. 언뜻보면 이를 heap으로 볼 수도 있다. ⊙ 디폴트 힙(Default Heap) & Dynamic Heap 홍길동과 최대수가 다음과 같은 비디오 목록을 빌렸다. 보통 이럴 때, List 자료형을 많이 사용한다. 근데 List 자료형은 자료를 한번에 지울 수 없고, 각각을 일일이 지워주어야 하는 특징을 가지고 있다. 왜냐면 하나의 Heap안에 홍길동과 최대수를 위한 데이터가 같이 존재하기 때문이다. 이제까지 우리가 알던 heap을 default heap이..