CS:APP - 예외적인 제어흐름, 예외 상황

1. 예외적인 제어흐름 (Exceptional Control Flow) 프로그램 카운터(program counter)는 아래와 같이 연속된 값들을 가정한다. \[ a_0, a_1, ..., a_{n-1} \] 인스트럭션 \(I_k\) [Read More]

Hyper-V 2세대 우분투 설치하기

Hyper-V에서는 가상 컴퓨터를 생성할 때 1세대와 2세대 중 선택해야 한다. 2세대는 이런 기능을 제공한다. https://msdn.microsoft.com/ko-kr/library/dn282285.aspx 1세대: 이전 버전의 Hyper-V와 동일한 [Read More]

Hyper-V에서 네트워크 설정하기

Hyper-V를 써보기로 했다. 네트워크 설정부터 포트 포워딩까지 작업이 조금 귀찮다. 그래서 여기 적음. 1. 네트워크 설정 가상 스위치 관리자에서 '내부 네트워 [Read More]

Hyper-V 활성화/비활성화

관리자 권한으로 실행한다. 끄기. bcdedit /set hypervisorlaunchtype off 켜기. bcdedit /set hypervisorlaunchtype auto 명령어 실행 후 재부팅이 필요하다.

CS:APP - 링킹 2

이번 글에서는 실행 파일, 라이브러리 링크, 라이브러리 삽입에 대해 정리한다. 1. 실행 가능한 목적 파일 실행 가능한 목적 파일은 완전히 링크된 상태이기 때문에 .rel 섹션 [Read More]

CS:APP - 링킹 1

리눅스와 ELF-64 포맷 기준. 1. 컴파일러 드라이버 gcc와 같은 컴파일러 드라이버(Compiler driver)는 필요에 따라 전처리기, 컴파일러, 어셈블러, [Read More]

CS:APP - 캐시 메모리

오늘은 캐시 메모리에 대해 정리. 짧게짧게 정리함. 1. cache hit, cache miss 찾으려는 데이터가 이미 캐시돼있다면 cache hit이 발생한다. 즉 메인 메모리를 거치지 않고 빠르게 데이 [Read More]

CS:APP - 프로그램 최적화 2

저번 글에 이어서 계속한다. 1. 예제 및 복습 여기서는 책, 강의에서 제시해주는 예제를 쓰자. vector 자료형에 대한 연산이 정의된 combine 함수를 여러 기법을 사용해 최적화시키겠 [Read More]

CS:APP - 프로그램 최적화 1

오늘은 인강도 참고했다. 이어폰 안가져와서 교수님 목소리 못듣고 페이지만 봄ㅜㅜ https://scs.hosted.panopto.com/Panopto/Pages/Viewer.aspx?id=4b1da67c-2980-4b96-82e7-2f99139a2c0d 1. 비효율적인 함수 호출 아래 코드의 문제점은 무엇일까? void lower(char *s) { for (size_t i = 0; i [Read More]