GoWoong의 개발 블로그
close
프로필 배경
프로필 로고

GoWoong의 개발 블로그

  • 분류 전체보기 (189)
    • 크래프톤 정글 (83)
    • 크래프톤 정글 (컴퓨터 시스템: CSAPP) (57)
      • 3장 프로그램의 기계수준 표현 (16)
      • 6장 메모리 계층구조 (6)
      • 7장 링커 (6)
      • 8장 예외적 제어 흐름 (7)
      • 9장 가상 메모리 (16)
      • 11장 네트워크 프로그래밍 (6)
    • 클라우드 (4)
      • [AWS] AWS IoT Core (4)
      • DevOps (0)
    • Deep Dive (29)
      • CS (15)
      • OS (13)
    • 백엔드 개발 (0)
      • 파이썬 (0)
      • 자바 스프링 (0)
    • 자격증 공부 (5)
      • AWS Cloud Practitioner (2)
      • 정보처리기사 (1)
      • AWS SAA-C03 (2)
    • 앱 개발 (5)
      • Flutter (5)
    • AI & LLM (1)
    • 문제 기록 (0)
    • 커뮤니티 참석 후기 (2)
    • 일상 기록 (1)
  • 홈
  • 자소서
  • 포트폴리오
  • 이력서
컴퓨터 시스템 : CSAPP 11장 정리 - 11.1 ~ 11.2

컴퓨터 시스템 : CSAPP 11장 정리 - 11.1 ~ 11.2

CSAPP 11장은 네트워크 프로그래밍(Network Programming)을 다루며, 도입부에서는 우리가 웹 브라우징, 이메일 전송, 온라인 게임 등을 할 때마다 네트워크 응용 프로그램을 사용하고 있음을 강조한다. 흥미로운 점은 이러한 다양한 네트워크 응용 프로그램들이 모두 동일한 기본 프로그래밍 모델을 기반으로 한다는 것이다. 즉, 구조적으로 유사하며, 같은 프로그래밍 인터페이스(주로 소켓)를 사용한다는 점이다.이러한 네트워크 응용 프로그램들은 이미 시스템 프로그래밍에서 배운 개념들—프로세스, 시그널, 바이트 순서, 메모리 매핑, 동적 메모리 할당 등—에 의존한다. 동시에, 클라이언트-서버 모델이라는 새로운 개념도 습득해야 한다. 마지막에는 이 모든 아이디어를 종합하여 실제 웹 브라우저가 접속 가능한..

  • format_list_bulleted 크래프톤 정글 (컴퓨터 시스템: CSAPP)/11장 네트워크 프로그래밍
  • · 2025. 5. 2.
  • textsms
Malloc Lab 회고

Malloc Lab 회고

Malloc Lab을 진행하면서 나는 92점이라는 점수를 받았다. 이 점수는 분리 가용 리스트(Segregated Free List)를 최초로 적용했을 때는 86점 수준이었으며, 이후 realloc 개선과 자잘한 최적화를 통해 92점까지 올릴 수 있었다. 하지만 이 점수가 내 코드의 한계인지, 더 높은 점수를 받을 수 있는 여지가 있는지 확인하고 싶었다. 그래서 다양한 개선 방안을 탐색하고, 실제로 적용하기 위해 시도했던 모든 과정을 공유하고자 이 주제를 선정하게 되었다.🔍 분리 가용 리스트 적용 직후아래는 분리 가용 리스트를 적용한 직후 얻은 점수이다.🔧 최적화 이후 결과realloc의 로직을 개선하고, 최적화를 반복적으로 적용하였다. 그 결과 아래와 같이 성능은 상당히 개선되었다📈 요청 크기 히..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 4. 30.
  • textsms
컴퓨터 시스템 : CSAPP 9장 정리 - 9.10 가비지 컬렉터 기초

컴퓨터 시스템 : CSAPP 9장 정리 - 9.10 가비지 컬렉터 기초

9.10 가지비 컬렉션 (Garbage Collection)명시적 할당자(예: C의 malloc 패키지)에서는 프로그램이 malloc과 free 호출을 통해 힙 블록을 직접 할당하고 해제한다. 따라서 프로그램이 더 이상 필요 없는 블록을 명시적으로 해제하지 않으면 메모리 누수가 발생한다.예를 들어, 다음과 같은 C 함수가 있다고 가정한다:void garbage() { int *p = (int *)Malloc(15213); return; /* 이 시점에서 p는 쓰레기가 된다 */}이 경우, p는 함수가 끝날 때 더 이상 참조되지 않지만, 개발자가 free(p) 호출을 빠뜨렸기 때문에 이 블록은 프로그램이 종료될 때까지 힙 공간을 차지하게 된다.가지비 컬렉터는 이런 문제를 해결하기 위해 만들어졌다..

  • format_list_bulleted 크래프톤 정글 (컴퓨터 시스템: CSAPP)/9장 가상 메모리
  • · 2025. 4. 29.
  • textsms

컴퓨터 시스템 : CSAPP 9장 정리 - 9.9.14 분리 가용 리스트

9.9.14 분리 가용 리스트 (Segregated Free Lists)명시적 가용 시트 문제점 :단일 연결 리스트로 모든 가용 블록을 관리하면, 원하는 크기의 블록을 찾기 위해 모든 블록을 선형 탐색해야 해서 시간이 오래 걸린다.해결책:"분리 저장소 (Segregated Storage)"라는 기법을 사용하여, 크기별로 여러 개의 가용 리스트를 유지한다. 즉, 비슷한 크기의 블록들끼리 따로 모아서 관리하는 것이다.기본 아이디어가능한 블록 크기 전체를 여러 '크기 클래스(size class)'로 나누어 분류한다.예를 들면:{1}, {2}, {3, 4}, {5–8}, ..., {1025–2048}, {2049–4096}, {4097–∞}작은 블록은 세밀하게 구분하고, 큰 블록은 대략적인 크기별로 묶을 수도 ..

  • format_list_bulleted 크래프톤 정글 (컴퓨터 시스템: CSAPP)/9장 가상 메모리
  • · 2025. 4. 29.
  • textsms
[CS] 시스템 콜(System Call)

[CS] 시스템 콜(System Call)

시스템 콜(System Call)이란?시스템 콜은프로그램(사용자)이 운영체제(OS)에게 무언가를 요청하는 방법이다.쉽게 말하면,"사용자가 직접 못 하는 일"을 운영체제에게 대신해달라고 부탁하는 공식 통로이다.왜 필요한가?운영체제는 컴퓨터 자원을 보호해야 한다.예를 들어 메모리, 파일, 네트워크, 하드디스크 등은 아무 프로그램이나 마음대로 못 건드려야 한다.그래서 사용자 프로그램은 직접 하드웨어나 시스템 자원에 접근할 수 없다.대신 운영체제에 '요청'을 보내야 한다 → 이때 쓰는 공식 통로가 바로 시스템 콜이다.학교에서 급식을 먹고 싶으면, 학생이 직접 주방에 들어가 음식을 가져오지 않는다.대신 급식 아줌마(운영체제)에게 요청한다.시스템 콜은 "밥 주세요" 하는 요청이다.예시하고 싶은 일시스템 콜 이름파..

  • format_list_bulleted 카테고리 없음
  • · 2025. 4. 28.
  • textsms
[CS] 이더넷(Ethernet)

[CS] 이더넷(Ethernet)

이더넷(Ethernet)이란?이더넷은컴퓨터와 컴퓨터(또는 네트워크 장치들)를 유선으로 연결하는가장 기본적이고 널리 사용되는 네트워크 기술이다.쉽게 말하면, 케이블로 컴퓨터끼리 통신하게 해주는 규칙과 방법이다.이더넷은 데이터를 어떻게 전기 신호로 보내고 받을지 규정한 표준이다.회사/학교/집에서 쓰는 대부분의 유선 네트워크가 바로 이 이더넷 기반이다.데이터는 패킷(packet)이라는 작은 조각으로 쪼개져서 보내진다.이더넷은 속도, 케이블 종류, 통신 방법 등을 정해놓은 규칙을 따른다.이더넷은 도로 같디.자동차(데이터)가 달릴 때, 도로 규칙(이더넷 표준)을 따라야 하고,도로(케이블)를 통해 목적지(다른 컴퓨터)까지 간다.1. 전기적/물리적 규칙 (Physical Layer)어떤 케이블을 쓸지예: UTP 케이..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 4. 28.
  • textsms
  • navigate_before
  • 1
  • ···
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • ···
  • 32
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (189)
    • 크래프톤 정글 (83)
    • 크래프톤 정글 (컴퓨터 시스템: CSAPP) (57)
      • 3장 프로그램의 기계수준 표현 (16)
      • 6장 메모리 계층구조 (6)
      • 7장 링커 (6)
      • 8장 예외적 제어 흐름 (7)
      • 9장 가상 메모리 (16)
      • 11장 네트워크 프로그래밍 (6)
    • 클라우드 (4)
      • [AWS] AWS IoT Core (4)
      • DevOps (0)
    • Deep Dive (29)
      • CS (15)
      • OS (13)
    • 백엔드 개발 (0)
      • 파이썬 (0)
      • 자바 스프링 (0)
    • 자격증 공부 (5)
      • AWS Cloud Practitioner (2)
      • 정보처리기사 (1)
      • AWS SAA-C03 (2)
    • 앱 개발 (5)
      • Flutter (5)
    • AI & LLM (1)
    • 문제 기록 (0)
    • 커뮤니티 참석 후기 (2)
    • 일상 기록 (1)
최근 글
인기 글
최근 댓글
태그
  • #serverless
  • #AWS
  • #AWS Community Day
  • #aws #iot
  • #CLF-C01
  • #Cloud Practitioner
  • #AWS 자격증
  • #IOT
  • #AWSKRUG
  • #saa-c03
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바