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

GoWoong의 개발 블로그

  • 분류 전체보기 (166) N
    • 크래프톤 정글 (79) N
    • 크래프톤 정글 (컴퓨터 시스템: 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)
    • 문제 기록 (0)
    • 커뮤니티 참석 후기 (2)
    • 일상 기록 (1)
  • 홈
  • 글쓰기

[CS] 프로세스(Process)와 스레드(Thread)

프로세스와 스레드는 운영체제에서 작업을 관리하는 기본 단위로, 각각 다른 특성과 역할을 가지고 있다.프로세스(Process)프로세스는 컴퓨터에서 실행 중인 프로그램의 인스턴스다. 운영체제로부터 자원을 할당받은 작업의 단위로 정의되며, 각 프로세스는 독립적인 메모리 공간을 가지고 있고, 다른 프로세스와 메모리를 직접적으로 공유하지 않는다.프로세스의 특징:독립된 메모리 공간(Code, Data, Stack, Heap)을 할당받음다른 프로세스의 메모리에 직접 접근할 수 없음프로세스 간 통신(IPC)을 위해 파이프, 소켓, 공유 메모리 등의 방법이 필요함새로운 프로세스 생성 시 운영체제가 자원을 새로 할당하므로 오버헤드가 큼예시:크롬의 탭 하나하나가 독립된 프로세스로 실행되어, 하나의 탭이 오류를 일으켜도 전체..

  • format_list_bulleted Deep Dive/CS
  • · 2025. 5. 15.
  • 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
WebProxy-Lab 회고

WebProxy-Lab 회고

스레드 락(thread lock) 은 멀티스레딩 환경에서 공유 자원 접근을 동기화하기 위해 매우 중요한 개념이다. 특히 캐시 같은 공유 메모리 구조는 여러 스레드가 동시에 접근하면 데이터 레이스, 비일관성, 세그멘테이션 폴트 등 심각한 문제가 발생할 수 있어, 락이 필수적이다.더보기1. 스레드 락의 목적하나의 스레드만 임계 구역(critical section)에 진입할 수 있도록 제한하는 동기화 장치임계 구역: 동시에 둘 이상이 들어가면 문제가 발생하는 코드 영역 (예: 캐시 삽입, 삭제, 접근)문제점 예시:두 스레드가 동시에 같은 URI를 캐시에 삽입하거나 제거하면 → 메모리 누수, 중복 삽입, 충돌 발생한 스레드가 next 포인터를 변경하고 있는 도중 다른 스레드가 이를 따라 접근 → 세그폴트주제 :..

  • format_list_bulleted 크래프톤 정글
  • · 2025. 5. 7.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • ···
  • 28
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (166) N
    • 크래프톤 정글 (79) N
    • 크래프톤 정글 (컴퓨터 시스템: 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)
    • 문제 기록 (0)
    • 커뮤니티 참석 후기 (2)
    • 일상 기록 (1)
최근 글
인기 글
최근 댓글
태그
  • #AWS Community Day
  • #AWS 자격증
  • #IOT
  • #AWSKRUG
  • #CLF-C01
  • #saa-c03
  • #Cloud Practitioner
  • #serverless
  • #aws #iot
  • #AWS
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바