About_builtin_exptect

Background

컴퓨터 구조를 배우면서, MIPS 아키텍쳐에 대해 공부하고 있다. MIPS의 경우, pipeline을 도입하고 branch prediction을 위해 여러 방법을 사용한다고 한다. 그 방법 중 static prediction의 방법으로 해당 branch가 거짓일 경우(즉, jump를 수행하지 않는 분기)로 예상하는 방법이 존재한다고 한다.

이 방법을 보고나서 gcc의 __builtin_expectC++20의 likely 및 unlikely attribute가 이러한 분기 예측을 기반으로 구성되어 있는 것이 아닌가하는 생각이 들었다. 따라서 이를 간단하게 분석해보고자 하였다.

__builtin_expect

GCC에서는 컴파일러에게 도움을 줄 수 있는 여러 builtin macro를 제공한다. 앞서 언급했듯, 그 중에는 __builtin_expect__builtin_expect_with_probability가 존재한다.

Read more →

갤럭시 북 2 프로에 Arch linux 깔기


개요

BoB 에서 받은 노트북 갤럭시 북 2 프로 (NT951XED) 에 리눅스, 그 중에서도 Arch Linux 를 깔아서 쓰는 법을 정리한 글이다. 이 글에서 다루는 내용은 다음과 같다.

  1. archinstall 을 사용한 Arch Linux 설치 방법
    1. Hyprdots 설치 및 HiDPI 설정 방법
  2. 삼성 노트북에서 Arch Linux 및 Windows 를 Secure Boot 로 부팅하는 법
  3. 화면 밝기 조절하는 법

또한 Arch Linux 를 설치하는 환경은 다음과 같다.

  • 갤럭시 북 2 프로
  • 2 개의 NVME SSD
    • 하나의 SSD 는 윈도우 설치
    • 다른 SSD 는 리눅스 설치

Arch Linux 설치

설치 USB 만들기

다음 주소에서 아치 리눅스 부팅 ISO 파일을 다운로드한다.

Read more →