Post

Multi Processing/ Multi Programming/ Multi Tasking/ Multi Threading

βœ… Multi Processing

several CPUs

  • each CPU can execute different task
  • parallel processing

  • in process, work in parallel
  • operate multiple jobs at the same time
  • πŸ‘πŸ» reduce time

  • πŸ› οΈ used in cloud
  • πŸ› οΈ multi-core

βœ… Multi Programming

multiple programs are loadad into memory
CPU switches between them

  • ⭐️ several program in memory
  • OS schedule which program to be run
  • CPU switching
  • πŸ‘πŸ» Optimize CPU usage

  • πŸ› οΈ run text editor and compiler simultaneously

πŸ’‘ Paging https://soheeparklee.github.io/posts/OS-12paging/

βœ… Multi Tasking

Screenshot 2024-09-10 at 16 26 51

OS execute multiple tasks simultaneously
extension of multiprogramming, but more general sense

  • Task: unit of work in OS/ command for work
  • process보닀 ν™•μž₯된 κ°œλ…
  • CPU switching
  • appears that CPU is executing two tasks at the same time

  • OS handles multi tasking
  • tasks have independent memory, do not share resources
  • need IPC for communication between tasks
  • πŸ‘πŸ» has independent memory, can be executed memory

  • cooperative multitasking
  • preemptive multitasking: force CPU switch

  • πŸ› οΈ modern OS, run web browser, text editor, music player
  • general purpose OS
  • run multiple Apps

βœ… Multi Threading

multiple thread in one process

  • threads share resource like memory, but execute independently

  • πŸ‘πŸ» data sharing among thread
  • πŸ‘πŸ» efficient communication

  • πŸ› οΈ multiple client requests
This post is licensed under CC BY 4.0 by the author.