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

GoWoong의 개발 블로그

  • 분류 전체보기 (173) N
    • 크래프톤 정글 (82)
    • 크래프톤 정글 (컴퓨터 시스템: CSAPP) (57)
      • 3장 프로그램의 기계수준 표현 (16)
      • 6장 메모리 계층구조 (6)
      • 7장 링커 (6)
      • 8장 예외적 제어 흐름 (7)
      • 9장 가상 메모리 (16)
      • 11장 네트워크 프로그래밍 (6)
    • 클라우드 (4)
      • [AWS] AWS IoT Core (4)
      • DevOps (0)
    • Deep Dive (16)
      • CS (15)
    • 백엔드 개발 (0)
      • 파이썬 (0)
      • 자바 스프링 (0)
    • 자격증 공부 (5)
      • AWS Cloud Practitioner (2)
      • 정보처리기사 (1)
      • AWS SAA-C03 (2)
    • 앱 개발 (4) N
      • Flutter (4) N
    • 문제 기록 (0)
    • 커뮤니티 참석 후기 (2)
    • 일상 기록 (1)
  • 홈
  • 글쓰기
[pintos] Week2~3: User Program Part.2 이론 - ELF 로딩

[pintos] Week2~3: User Program Part.2 이론 - ELF 로딩

이전 포스팅에서 pintos 2~3 주차의 주요 목표와 pintos에서 시스템 콜이 발생하는 과정에 대해 알아보았다. 2025.05.19 - [크래프톤 정글] - [pintos] Week2~3: User Program Part.1 [pintos] Week2~3: User Program Part.11주 차에 Alarm Clock, Priority Scheduling과 같이 동기화와 스케줄링에 대해 다루었다면 2~3주 차는 User Program이 Pintos에서 돌아갈 수 있도록 구현을 진행한다.User Program을 OS에 로드하고, System Call을 통해 Uwww.gowoong.com이번 시간에는 ELF와 Load에 대해 알아보고 유저 프로그램을 pintos에서 실행하기 위한 과정을 알아보도록 ..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 5. 19.
  • textsms
[pintos] Week2~3: User Program Part.1 이론 - 시스템 콜

[pintos] Week2~3: User Program Part.1 이론 - 시스템 콜

1주 차에 Alarm Clock, Priority Scheduling과 같이 동기화와 스케줄링에 대해 다루었다면 2~3주 차는 User Program이 Pintos에서 돌아갈 수 있도록 구현을 진행한다.User Program을 OS에 로드하고, System Call을 통해 User Program과 커널이 상호작용하는 방법에 대해 공부하고 그 내용을 기록하려고 한다.전체 플로우이전 프로젝트(1주차) 에서는 테스트 코드를 커널에 바로 컴파일했기 때문에 커널 안에서 상호작용하는 특정 함수들을 필요로 했다. 이 번주부터는 유저프로그램을 실행하여 운영체제를 테스트한다. 커널 모드와 유저모드운영체제는 보안과 안정성을 위해 하드웨어의 접근 권한을 두 가지 모드로 나누어 놨다. 그 두가지를 각각 커널 모드와 유저 모드..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 5. 19.
  • textsms
[pintos] Week1: Priority Scheduling - Part.3

[pintos] Week1: Priority Scheduling - Part.3

이전 포스팅에서는 세마포어와 조건 변수에 대한 수정을 진행했다. 이번 포스팅에서는 우선순위 기부기능을 구현하는 것을 목표로 한다.2025.05.12 - [분류 전체보기] - [pintos] Week1: Priority Scheduling - Part.2 [pintos] Week1: Priority Scheduling - Part.2이 전 포스팅에서는 우선순위에 따라 선점을 하는 기능을 구현했다. 이번 포스팅에서는 세마포어, 조건 변수에 따른 Lock 기능을 구현해 보겠다.2025.05.12 - [크래프톤 정글] - [pintos] Week1: Priority Schewww.gowoong.com구현 요구사항 설명의존관계 역전우선순위가 높은 스레드가 우선순위가 낮은 스레드를 기다리는 상황이다.2025.05...

  • format_list_bulleted 크래프톤 정글
  • · 2025. 5. 12.
  • textsms
[pintos] Week1: Priority Scheduling - Part.2

[pintos] Week1: Priority Scheduling - Part.2

이 전 포스팅에서는 우선순위에 따라 선점을 하는 기능을 구현했다. 이번 포스팅에서는 세마포어, 조건 변수에 따른 Lock 기능을 구현해 보겠다.2025.05.12 - [크래프톤 정글] - [pintos] Week1: Priority Scheduling - Part.1 [pintos] Week1: Priority Scheduling - Part.1이전 포스팅인 Alarm Clock의 경우 pintos를 어떻게 접근해야 하는가? 그런 느낌이 들었다면 Priority Scheduling의 경우 복잡하고 어려웠다. 그리고 다시 한번 느끼게 된 건 문서를 잘 읽고 개념을 잘 잡고www.gowoong.com구현 요구사항 설명잠금(또는 조건 변수)을 기다리는 스레드 집합에서 스레드의 우선순위에 따라 대기 중인 스레드..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 5. 12.
  • textsms
[pintos] Week1: Priority Scheduling - Part.1

[pintos] Week1: Priority Scheduling - Part.1

이전 포스팅인 Alarm Clock의 경우 pintos를 어떻게 접근해야 하는가? 그런 느낌이 들었다면 Priority Scheduling의 경우 복잡하고 어려웠다. 그리고 다시 한번 느끼게 된 건 문서를 잘 읽고 개념을 잘 잡고 진행하자였다.구현 요구사항 설명pintos는 FIFO(First In First Out)으로 스케줄링을 진행한다.pintos를 우선순위에 따라 스케줄링을 진행하도록 수정하라ready list를 스레드 우선순위에 따라 정렬하라동기화 기본 요소(세마포어, 조건 변수)에 대한 대기 목록을 정렬한다.선점기능을 구현하라선점 지점: 스레드가 준비 목록에 추가될 때(타이머 인터럽트가 호출될 때마다가 아님).구현 목표ready list에 새로 추가된 thread의 우선순위가 현재 CPU를 점..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 5. 12.
  • textsms
[pintos] 우선순위 역전과 우선순위 기부

[pintos] 우선순위 역전과 우선순위 기부

우선순위 역전(Priority Inversion)은 낮은 우선순위의 스레드가 높은 우선순위의 스레드보다 먼저 CPU를 점유하거나, 높은 우선순위 스레드의 실행을 지연시키는 현상을 의미한다. 이는 멀티스레딩 환경에서 공유 자원과 락(lock)이 있을 때 주로 발생한다.발생 시나리오L (Low priority) 스레드가 공유 자원(R)을 사용 중이다.H (High priority) 스레드가 실행되며, 같은 자원 R에 접근하려고 한다.하지만 자원 R은 이미 L이 점유 중이므로, H는 대기하게 된다.그 사이 M (Medium priority) 스레드가 스케줄러에 의해 실행된다.M은 자원 R과 무관하지만 H보다 우선순위가 낮으므로 원래 H 다음에 실행되어야 하지만,현재 H는 자원 대기 상태이므로 M이 계속 실행됨..

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

티스토리툴바