컴공생의 발자취

Thread 본문

📖 이론/운영체제

Thread

MNY 2022. 5. 11. 00:25
728x90
반응형
  • 같은 address space 안에 살고 있다
  • 병렬 처리가 가능해 진다
  • 전역변수를 통한 데이터 공유가 가능하다
  • 일반적으로 프로세스가 생성되면 싱글 스레드로 동작한다
  • thread를 사용하면 CPU core가 하나만 있는 경우라도 코드의 동시 실행이 가능하다

* parallelism: 시스템이 둘 이상의 작업을 동시에 수행할 수 있음

                 실제 물리적으로 동시에 동작(코어 2개 이상)

* concurrency: 두 개 이상의 작업을 지원하여 진행 중

                    단일 프로세서 코어, 동시성을 제공하는 스케쥴러

  • 일반적인 thread 간 통신은 큐를 사용
  • 프로세스당 프로그램 카운터가 여러 개인 것을 고려한다
  • 여러 위치를 동시에 실행할 수 있음(다중 제어 스레드 -> 스레드)
  • thread 세부 정보를 저장할 수 있어야 한다. PCB에 여러 프로그램 카운터가 있어야 한다.
  • thread 대신 process 사용도 가능하나, thread가 더 가볍고 응답성이 좋다
  • many-to-one: one thread blocking causes all to block

 

728x90
반응형

'📖 이론 > 운영체제' 카테고리의 다른 글

Porable Operating System Interface(POSIX)  (0) 2022.05.10
Process Control Block(PCB)  (0) 2022.05.10
process state diagram  (0) 2022.05.10
monolithic kernel VS micro kernel  (0) 2022.04.28
fork()_C언어(Linux)  (0) 2022.04.28