쓰레드(3)
-
Java Thread, JDK 뒤져보기
오늘 아침 지하철을 타고 오면서 문득 이런 궁금증이 떠올랐습니다. 'cpu 사양에 따라 가용한 쓰레드의 개수는 한정적일텐데, 자바에서는 어떻게 쓰레드의 개수를 마구마구 늘릴 수 있는거지?' 사실 user thread니 kernel thread니 이런저런 이야기를 들어본 적은 있지만 정확하게 알고있지 않다고 생각해 한번 정리해보고자 합니다. Thread의 종류 Thread는 크게 'User Thread', 'kernel Thread', 'Hardware Thread' 세 유형으로 구분해서 설명할 수 있습니다. User Thread User Thread는 어플리케이션을 통해 생성되는 쓰레드를 의미합니다. 쉽게 생각해서 우리가 Java의 new Thread()를 호출하면 User Thread가 생성된다고 생각..
2023.11.14 -
운영체제(4), Threads & Concurrency
Threads & Concurrency 3장 내용 복습 Process: 프로그램을 실행하는 주체(단위) 프로그램은 하나지만 프로세스는 여러개일 수 있다. 예를 들어 HWP 프로그램은 하나지만 파일을 여러개 열고 있으면 프로세스가 여러개 사용될 수 있다. 구글의 크롬 브라우저는 Renderer, Plug in, Browser process가 존재해 브라우저를 열어준다. 운영체제가 이 프로세스를 관리하기 위해 PCB를 사용한다. 프로세스는 ready, running, waiting의 상태를 번갈아가며 실행된다. 레디 큐에 있는 프로세스를 선택하는 것을 스케줄링, 이를 cpu에 올리는 작업을 디스패치라 한다. 스케줄링과 디스패치를 하나의 큰 틀에서 스케줄링이라고 한다. 디스패치를 한다는 것은 cpu의 레지스터..
2022.12.18 -
우아한테코톡(8), Process vs Thread
본 포스팅은 우아한Tech의 테코톡 쿼리치님의 Process vs Thread 영상을 정리한 내용입니다. 프로세스와 쓰레드의 간단한 정의 및 특징을 위주로 정리했습니다. 쓰레드와 관련된 보다 딥한 내용은 컴퓨터 구조 수업 시간에 수강한 멀티쓰레드 파트를 복습하면 좋을 것 같다. 2022.06.13 - [강의 내용 정리/컴퓨터구조] - 컴퓨터 구조(11), Multithreading 컴퓨터 구조(11), Multithreading Multithreading 1. Multithreading Basic - thread: state한 명령어 스트림. state은 레지스터나 메모리에 있다. 쉽게 생각해서 프로그램으로 볼 수 있다. - 쓰레드 컨텍스트는 레지스터에 있는 state를 의미한다.. konghana01...
2022.08.22