πŸ˜€
Hyune's Wiki
  • Welcome
  • Article
    • Link
  • Mentor & Code Reviewer
    • μ§„ν–‰ν•˜κΈ°μ— μ•žμ„œ..
    • Code Review History
      • ν•œλ°© 쿼리 vs μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ 쑰립
      • DBμ—μ„œ TIMESTAMP와 DATETIME νƒ€μž…μ˜ 차이
      • ServiceλŠ” μ–΄λ–€ dtoλ₯Ό λ°˜ν™˜ν•΄μ•Ό ν• κΉŒ?
        • ν™•μž₯ 질문
  • Legacy
    • 싀무 κ²½ν—˜ & 팁
      • Kotlin
        • 파일 μ‘°μž‘ν•˜κΈ°
      • Infra
        • Lightsail
          • μΈμŠ€ν„΄μŠ€ ꡬ성 예제
        • 곡인 ip ν™•μΈν•˜κΈ°
      • Database
        • INSERT INTO SELECT SHARED LOCK(row LOCK)
      • API Document
        • OpenAPI (Swagger 3.0)
          • 정적 λ¬Έμ„œ 내보내기
      • Side Project
        • Codesquad
      • ETC
        • HTTP Request μΆ”μ ν•˜κΈ° with HAR File
    • Study
      • Language
        • Java
          • Copy
          • λ©”λͺ¨λ¦¬ 관리
          • Garbage Collection
          • 자료ꡬ쑰
          • Java 17
        • Kotlin
          • Coroutine
      • Framework & Library
        • Spring
          • Spring Security
          • @Component vs @Configuration
        • JPA
          • show-sql μ„€μ •μ˜ 단점
          • @GeneratedValue strategy
          • Entity의 field type
        • Logback
          • κΈ°λ³Έ μ„€μ •
        • Monitoring
          • VisualVM
            • μ„€μΉ˜
            • λ¬Έμžμ—΄ μƒμ„±μœΌλ‘œ ν…ŒμŠ€νŠΈ
          • nGrinder
      • Database
        • MySQL
          • SQL λ¬Έ μˆ˜ν–‰ 절차
          • νŠΈλžœμž­μ…˜κ³Ό 잠금
          • 인덱슀
      • Infra
        • AWS
          • S3
            • μš©μ–΄
            • Amazon SDK 1.x with Spring
          • DynamoDB
            • Get vs Query vs Scan
        • Docker & Kubernetes
      • Computer Science
        • OS
          • Process vs Thread
          • Process
        • Web
          • HTTP
            • HTTP vs HTTPS
            • HTTP ꡬ성
            • HTTP κ·Έμ™Έ
          • REST API
            • GET λ©”μ„œλ“œμ— payloadλ₯Ό μ‚¬μš©ν•΄λ„ λ˜λŠ”κ°€?
            • νŠΉμ • λͺ©μ μ˜ APIλŠ” μ–΄λ–»κ²Œ λ§Œλ“€μ–΄μ•Ό ν• κΉŒ?
          • TCP / UDP
          • μΈν„°λ„·μ˜ μž‘λ™ 원리
          • OAuth 2.0
        • Design Pattern
          • Builder Pattern
        • MSA
        • DDD
      • Test
        • Test Doule
      • Book & Online Class
        • ν•œ λ²ˆμ— λλ‚΄λŠ” Spring μ™„.μ „.판 초격차 νŒ¨ν‚€μ§€ Online
          • AOP, Aspect Oriented Programming
          • Data Binding
          • IoC(Inversion of Control), DI(Dependency Injection)
          • Null Safety
          • Spring Resource
          • Spring Boot 버전별 λ³€ν™”
          • SpEL, Spring Expression Language
          • Validation
        • μ΄νŽ™ν‹°λΈŒ μžλ°” 3판
          • 2μž₯ 객체 생성과 파괴
            • μ•„μ΄ν…œ 1. μƒμ„±μž λŒ€μ‹  정적 νŒ©ν„°λ¦¬ λ©”μ„œλ“œλ₯Ό κ³ λ €ν•˜λΌ
            • μ•„μ΄ν…œ 2. μƒμ„±μžμ— λ§€κ°œλ³€μˆ˜κ°€ λ§Žλ‹€λ©΄ λΉŒλ”λ₯Ό κ³ λ €ν•˜λΌ
            • μ•„μ΄ν…œ 3. private μƒμ„±μžλ‚˜ μ—΄κ±° νƒ€μž…μœΌλ‘œ μ‹±κΈ€ν„΄μž„μ„ λ³΄μ¦ν•˜λΌ
            • μ•„μ΄ν…œ 4. μΈμŠ€ν„΄μŠ€ν™”λ₯Ό λ§‰μœΌλ €κ±°λ“  private μƒμ„±μžλ₯Ό μ‚¬μš©ν•˜λΌ
            • μ•„μ΄ν…œ 5. μžμ›μ„ 직접 λͺ…μ‹œν•˜μ§€ 말고 의쑴 객체 μ£Όμž…μ„ μ‚¬μš©ν•˜λΌ
            • μ•„μ΄ν…œ 7. λ‹€ μ“΄ 객체 μ°Έμ‘°λ₯Ό ν•΄μ œν•˜λΌ
          • 3μž₯ λͺ¨λ“  객체의 곡톡 λ©”μ„œλ“œ
            • μ•„μ΄ν…œ 11. equalsλ₯Ό μž¬μ •μ˜ν•˜λ €κ±°λ“  hashCode도 μž¬μ •μ˜ν•˜λΌ
            • μ•„μ΄ν…œ 12. toString을 항상 μž¬μ •μ˜ν•˜λΌ
            • μ•„μ΄ν…œ 14. Comparable을 κ΅¬ν˜„ν• μ§€ κ³ λ €ν•˜λΌ
          • 4μž₯ ν΄λž˜μŠ€μ™€ μΈν„°νŽ˜μ΄μŠ€
      • Webinar
        • μš”μ¦˜ νž™ν•œ μŠ€νƒ€νŠΈμ—…μ˜ DBDB DEEPν•œ 이야기
Powered by GitBook
On this page
  • Process 의 ꡬ성 μš”μ†Œ
  • μŠ€μΌ€μ€„λ§ μš°μ„  μˆœμœ„
  • Process κ°„ 정보 곡유

Was this helpful?

Edit on GitHub
  1. Legacy
  2. Study
  3. Computer Science
  4. OS

Process

ν”„λ‘œμ„ΈμŠ€λž€ 싀행쀑에 μžˆλŠ” ν”„λ‘œκ·Έλž¨μœΌλ‘œ μŠ€μΌ€μ€„λ§μ˜ λŒ€μƒμ΄ λ˜λŠ” μž‘μ—… (task) κ³Ό 같은 의미둜 μ‚¬μš©λ©λ‹ˆλ‹€. ν”„λ‘œμ„ΈμŠ€ λ‚΄λΆ€μ—λŠ” μ΅œμ†Œ ν•˜λ‚˜μ˜ μŠ€λ ˆλ“œ (thread) λ₯Ό κ°€μ§€κ³ μžˆλŠ”λ°, μ‹€μ œλ‘œλŠ” μŠ€λ ˆλ“œ λ‹¨μœ„λ‘œ μŠ€μΌ€μ€„λ§ λ©λ‹ˆλ‹€. ν•˜λ“œλ””μŠ€ν¬μ— μžˆλŠ” ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λ©΄, 싀행을 μœ„ν•΄μ„œ λ©”λͺ¨λ¦¬ 할당이 이루어지고, ν• λ‹Ήλœ λ©”λͺ¨λ¦¬ κ³΅κ°„μœΌλ‘œ λ°”μ΄λ„ˆλ¦¬ μ½”λ“œκ°€ μ˜¬λΌκ°€κ²Œ λ˜λŠ”λ° 이 μˆœκ°„λΆ€ν„° ν”„λ‘œμ„ΈμŠ€λΌ 뢈뀼게 λ©λ‹ˆλ‹€.

Process 의 ꡬ성 μš”μ†Œ

PID

ν”„λ‘œμ„ΈμŠ€ μ‹λ³„λ²ˆν˜Έ, Process IDentification

ν”„λ‘œμ„ΈμŠ€ μƒνƒœ

State
Description

New

막 μƒμ„±λœ μƒνƒœ

Ready

CPU 에 μ‹€ν–‰λ˜κΈ° μœ„ν•΄ λŒ€κΈ°ν•˜λŠ” μƒνƒœ

Running

ν¬ν•¨λœ λͺ…λ Ήμ–΄κ°€ μ‹€ν–‰λ˜κ³  μžˆλŠ” μƒνƒœ

Waiting

νŠΉμ • μžμ›μ΄λ‚˜ 이벀트λ₯Ό κΈ°λ‹€λ¦¬λŠ” μƒνƒœ

Suspended Waiting

λŒ€κΈ° μƒνƒœμ—μ„œ κΈ°μ–΅ μž₯치λ₯Ό μžƒμ€ μƒνƒœ

Suspended Ready

κΈ°μ–΅μž₯치λ₯Ό μ œμ™Έν•œ λ‹€λ₯Έ λͺ¨λ“  ν•„μš”ν•œ μžμ›λ“€μ„ λ³΄μœ ν•œ μƒνƒœ

Terminated

싀행을 μ™„λ£Œν•œ μƒνƒœ

ν”„λ‘œκ·Έλž¨ μΉ΄μš΄ν„°

CPU κ°€ λ‹€μŒμœΌλ‘œ μ‹€ν–‰ν•  λͺ…λ Ήμ–΄ λ©”λͺ¨λ¦¬ μ£Όμ†Œλ₯Ό κ°€λ¦¬ν‚€λŠ” κ°’

μŠ€μΌ€μ€„λ§ μš°μ„  μˆœμœ„

Algorithm
Description

FCFS (First Come , First Serve)

λ¨Όμ € λ„μ°©ν•œ ν”„λ‘œμ„ΈμŠ€λ₯Ό λ¨Όμ € 처리

SJF (Shorted Job First)

μ΅œλ‹¨μž‘μ—…μš°μ„  (CPU λ²„μŠ€νŠΈ νƒ€μž„μ΄ 짦은)

Priority Scheduling

미리 μ£Όμ–΄μ§„ μš°μ„  μˆœμœ„μ— λ”°λΌμ„œ μŠ€μΌ€μ€„λ§

Round Robin

μ •ν•΄μ§„ μ‹œκ°„λ™μ•ˆ μž‘μ—… ν›„ μ€€λΉ„μ™„λ£Œ 큐 (μˆœν™˜ 큐)의 κ°€μž₯ λ§ˆμ§€λ§‰μœΌλ‘œ 이동

Multilevel-Queue (닀단계 큐)

μ€€λΉ„μ™„λ£Œ 큐λ₯Ό μ—¬λŸ¬κ°œμ˜ 큐둜 λΆ„λ₯˜ν•˜μ—¬ 각 큐가 각각 λ‹€λ₯Έ μŠ€μΌ€μ₯΄λ§ μ•Œκ³ λ¦¬μ¦˜μ„ κ°€μ§€λŠ” 방식 각 큐끼리의 μš°μ„  μˆœμœ„ 섀정도 ν•„μš”

Multilevel-Feedback-Queue (닀단계-ν”Όλ“œλ°± 큐)

닀단계 νμ—μ„œ 큐 μ‚¬μ΄μ˜ 이동을 ν—ˆμš©

κΆŒν•œ

ν”„λ‘œμ„ΈμŠ€κ°€ μ ‘κ·Όν•  수 μžˆλŠ” μžμ›μ„ κ²°μ •ν•˜λŠ” 정보

ν”„λ‘œμ„ΈμŠ€μ˜ λΆ€λͺ¨μ™€ μžμ‹ ν”„λ‘œμ„ΈμŠ€ 정보

ν”„λ‘œμ„ΈμŠ€μ˜ 데이터와 λͺ…λ Ήμ–΄κ°€ μžˆλŠ” λ©”λͺ¨λ¦¬ μœ„μΉ˜λ₯Ό κ°€λ¦¬ν‚€λŠ” 포인터

ν”„λ‘œμ„ΈμŠ€μ— ν• λ‹Ήλœ μžμ›λ“€μ„ κ°€λ¦¬ν‚€λŠ” 포인터

μ‹€ν–‰λ¬Έλ§₯

μ»¨ν…μŠ€νŠΈ μŠ€μœ„μΉ­μ„ μœ„ν•΄ λ§ˆμ§€λ§‰μœΌλ‘œ μ‹€ν–‰ν•œ ν”„λ‘œμ„Έμ„œμ˜ λ ˆμ§€μŠ€ν„° λ‚΄μš©μ„ κΈ°μ–΅ν•©λ‹ˆλ‹€.

Process κ°„ 정보 곡유

ν”„λ‘œμ„ΈμŠ€λΌλ¦¬λŠ” κ³΅μœ ν•˜λŠ” λ©”λͺ¨λ¦¬ 곡간이 없기에 λ³„λ„μ˜ 방법을 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

  • IPC(Inter-Process Communication), LPC(Local inter-Process Communication)

  • λ³„λ„λ‘œ 곡유 λ©”λͺ¨λ¦¬λ₯Ό μ„€μ •ν•©λ‹ˆλ‹€.

PreviousProcess vs ThreadNextWeb

Last updated 3 years ago

Was this helpful?