๐Ÿ“–
Mini's Today I Learned
  • Today I Learned
  • ๐Ÿ’ปComputer Science
    • ๐ŸงฑComputer Science
      • Computer Architecture
    • ๐Ÿฆ•OperatingSystem
      • System Structure
      • 01. ์šด์˜์ฒด์ œ ์—ญํ• 
      • 02. History๋กœ ์ดํ•ดํ•˜๋Š” ์šด์˜์ฒด์ œ
      • 03. ์šด์˜์ฒด์ œ ๊ตฌ์กฐ
      • 04. ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ฅด๋ง
      • 05. ์Šค์ผ€์ฅด๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜
      • 06. ํ”„๋กœ์„ธ์Šค ์ƒํƒœ์™€ ์Šค์ผ€์ฅด๋Ÿฌ
      • 07. ์ธํ„ฐ๋ŸฝํŠธ
      • 08. ํ”„๋กœ์„ธ์Šค์™€ ์ปจํ…์ŠคํŠธ ์Šค์œ„์นญ
      • 09. ํ”„๋กœ์„ธ์Šค๊ฐ„ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜(IPC ๊ธฐ๋ฒ•)
      • 10. Thread(์Šค๋ ˆ๋“œ)
      • 11. ๊ฐ€์ƒ๋ฉ”๋ชจ๋ฆฌ (Virtual Memory System)
      • 12. ํŒŒ์ผ์‹œ์Šคํ…œ ์ดํ•ด
      • 13. ๋ถ€ํŒ…์˜ ์ดํ•ด
      • 14. ๊ฐ€์ƒ๋จธ์‹ (Virtual Machine)
  • ๐Ÿ“ˆDatabase
    • MySQL CLI (Frequently used)
    • 1-Tier, 2Tier, 3Tier
    • Basic SQL
    • Built in function
    • Sub Query
    • View
    • Stored Program
    • index
    • Normalization(์ •๊ทœํ™”)
    • Transaction
    • Transaction
  • ๐ŸŒ Network
    • ๐Ÿ”Œ TCP&IP Basic
      • 01 TCP/IP ๋ง›๋ณด๊ธฐ
      • 02 TCP/IP ๊ฐœ์š”
      • 03 ํ†ต์‹  ์„œ๋น„์Šค์™€ ํ”„๋กœํ† ์ฝœ
      • 04 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต
      • 05 ํŠธ๋ Œ์ŠคํฌํŠธ ๊ณ„์ธต
      • 06 ๋„คํŠธ์›Œํฌ๊ณ„์ธต
      • 07 ๋ฐ์ดํ„ฐ ๊ณ„์ธต๊ณผ ๋ฌผ๋ฆฌ๊ณ„์ธต
      • 08 ๋ผ์šฐํŒ…
      • 09 ๋ณด์•ˆ
      • 10 HTTP ํ”„๋กœํ† ์ฝœ
    • ๐Ÿฟ๏ธHTTP ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์š”์•ฝ
      • 1. HTTP: ์›น์˜ ๊ธฐ์ดˆ
      • 2. URL ๊ณผ ๋ฆฌ์†Œ์Šค
      • 3. HTTP Message
      • 4. Connection Management
      • 5. Overview of web server architectures
      • 6. Proxies
      • 7.Caching
      • 8. Integration Points: Gateways, Tunnels, and Relays
      • 9. Web Robots
      • 10. HTTP/2.0
      • 11. Client Identification and Cookies
      • 12. Basic Authentication
      • 13. Digest Authentication
      • 14. Secure HTTP
      • 15. Entities and Encodings
      • 16. Internationalization
      • 17. Content Negotiation and Transcoding
      • 18. Web Hosting
  • ๐ŸดLanguage
    • โ˜•JAVA
      • Comparable vs Comparator
  • ๐Ÿ› ๏ธ Framework
  • ๐ŸงฉDesign Pattern
    • ๊ฐ์ฒด ์ง€ํ–ฅ ์„ค๊ณ„ ์›์น™ (SOLID)
    • Design Pattern ๊ฐœ์š”
    • Template method
    • Singleton
  • ๐ŸฅFrontEnd
    • HTML&CSS
      • 01 Intro
      • 02 HTML Basic
      • 03 Content Section
      • 04 Block and Inline Elements
      • 05 Text Contents
      • 06 Inline Elements
      • 07 Multi Media
      • 08 Table&Form&etc
      • 09 Global Attribute & etc
      • 10 css basic
      • 11 css config
      • 12 css unit
      • 13 Box Model
      • 14 Font & Text
      • 15 Float(๋„์›€) & Position
      • 16 Background
      • 17 Transitions & Transforms
      • 18 Animation & Multi Columns(๋‹ค๋‹จ)
      • 19 Flex
      • 20 Grid
    • Sass(SCSS)
    • TypeScript
    • Webpack Introduction
      • ์›นํŒฉ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ
      • CommonJS
      • ESM
      • WebpackConfig
        • 1. Handlebars
        • 2. Caching
        • 3. Minification & Mangling
        • 4. Mode(Development mode & Production Mode)
        • 5. ์ด๋ฏธ์ง€ ํŒŒ์ผ ๋ชจ๋“ˆ๋กœ ๋‹ค๋ฃจ์–ด๋ณด๊ธฐ(file-loader)
        • 6. ์ด๋ฏธ์ง€ ํŒŒ์ผ ๋ชจ๋“ˆ๋กœ ๋‹ค๋ฃจ์–ด๋ณด๊ธฐ(url-loader)
        • 7. SASS Loader
        • 8. Post CSS
        • 9. BLOWSERS LIST
        • 10. Stylelint
        • 11. Babel
      • Webpack-Practice
    • ETC
      • GIT
      • MarkDown
Powered by GitBook
On this page

Was this helpful?

  1. Computer Science
  2. ๐Ÿฆ•OperatingSystem

System Structure

Previous๐Ÿฆ•OperatingSystemNext01. ์šด์˜์ฒด์ œ ์—ญํ• 

Last updated 4 years ago

Was this helpful?

  • CPU

    • ๋ฉ”๋ชจ๋ฆฌ๋กœ๋ถ€ํ„ฐ ๋งค ํด๋Ÿญ ์‚ฌ์ดํด๋งˆ๋‹ค ๋ช…๋ น(instruction)์„ ํ•œ ์ค„์”ฉ ์ฝ์–ด ์‹คํ–‰

    • register

      • CPU์•ˆ์— ๋ฉ”๋ชจ๋ฆฌ๋ณด๋‹ค ๋” ๋น ๋ฅด๋ฉด์„œ, ์ •๋ณด๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„.

      • ๋Œ€ํ‘œ register : Program Counter(pc)

    • mode bit

      • ์šด์˜์ฒด์ œ์ธ์ง€, ์‚ฌ์šฉ์žํ”„๋กœ๊ทธ๋žจ์ธ์ง€ ๊ตฌ๋ถ„์„ ํ•ด์ฃผ๋Š” bit

      • ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์˜ ์ž˜๋ชป๋œ ์ˆ˜ํ–‰์œผ๋กœ, ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ ๋ฐ ์šด์˜์ฒด์ œ์— ํ”ผํ•ด๊ฐ€ ๊ฐ€์ง€ ์•Š๋„๋ก ํ•˜๊ธฐ ์œ„ํ•œ ๋ณดํ˜ธ์žฅ์น˜.

      • ํ•˜๋“œ์›จ์–ด(HW, ์ดํ•˜ HW) ์ ์œผ๋กœ ๋‘๊ฐ€์ง€ ๋ชจ๋“œ์˜ operation์ง€์›

        • 1: ์‚ฌ์šฉ์ž๋ชจ๋“œ

          • ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ ์ˆ˜ํ–‰

          • ์ œํ•œ๋œ instruction๋งŒ ์ˆ˜ํ–‰. (๋ณด์•ˆ์— ๋”ฐ๋ผ)

          • ์ปค๋„๋ชจ๋“œ๋ฅผ ์ˆ˜ํ–‰์ค‘์ด๋‹ค๊ฐ€, ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์—๊ฒŒ CPU๋ฅผ ๋„˜๊ธฐ๊ธฐ ์ „์— mode bit๋ฅผ 0์œผ๋กœ ๋ณ€๊ฒฝ.

        • 0: ์ปค๋„๋ชจ๋“œ (=๋ชจ๋‹ˆํ„ฐ๋ชจ๋“œ, ์‹œ์Šคํ…œ๋ชจ๋“œ)

          • OS ์ฝ”๋“œ ์ˆ˜ํ–‰

          • ๋ณด์•ˆ์„ ํ•ด์น  ์ˆ˜ ์žˆ๋Š” ์ค‘์š”ํ•œ ๋ช…๋ น์–ด๋Š” ์ปค๋„ ๋ชจ๋“œ์—์„œ๋งŒ ์ˆ˜ํ–‰์ด ๊ฐ€๋Šฅํ•œ 'ํŠน๊ถŒ ๋ช…๋ น'์œผ๋กœ ๊ทœ์ •ํ•œ๋‹ค.

          • ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ ๋ฟ๋งŒ์ด ์•„๋‹ˆ๋ผ, I/O ๋””๋ฐ”์ด์Šค ์ ‘๊ทผ ํ˜น์€ ๋ชจ๋“  instruction์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

          • ์ธํ„ฐ๋ŸฝํŠธ๋‚˜ ์˜ˆ์™ธ์ƒํ™ฉ์—์„œ ํ•˜๋“œ์›จ์–ด๊ฐ€ mode bit๋ฅผ 0์œผ๋กœ ๋ณ€๊ฒฝ.

    • interrupt line (interrupt request line)

      • I/O ๋””๋ฐ”์ด์Šค์—์„œ ๋ฐœ์ƒํ•œ ์ด๋ฒคํŠธ(์ธํ„ฐ๋ŸฝํŠธ)๋ฅผ ์•Œ๋ ค์ค„ ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ์žฅ์น˜.

        • ์˜ˆ: ํ‚ค๋ณด๋“œ ์ž…๋ ฅ์ด ๋๋‚ฌ๊ฑฐ๋‚˜, ๋””์Šคํฌ์—์„œ ์ฝ์–ด์˜ค๋Š” ์ž‘์—…์ด ๋๋‚ฌ์Œ์„ ์•Œ๋ฆด๋•Œ ๋“ฑ

      • CPU๋Š” ํ•˜๋‚˜์˜ insturction์„ ์ˆ˜ํ–‰ํ•œ ํ›„, interrupt line์„ ํ™•์ธํ•˜์—ฌ interrupt๊ฐ€ ๋ฐœ์ƒ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ๋ฐœ์ƒ ์‹œ, ํ˜„์žฌ pc ์ฃผ์†Œ๋ฅผ ์ฝ์–ด๋“ค์ด๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์ž ์‹œ ํ•˜๋˜ ์ž‘์—…์„ ๋ฉˆ์ถ”๊ณ  cpu๋ฅผ ๋ˆ„๊ฐ€ ์“ฐ๊ณ ์žˆ์—ˆ๋“  ์ƒ๊ด€์—†์ด ์ œ์–ด๊ถŒ์„ OS๋กœ ๋„˜๊ธด๋‹ค.

      • OS๋Š” interrupt๋งˆ๋‹ค ์ƒํ™ฉ์— ๋งž๊ฒŒ ์ฒ˜๋ฆฌํ•ด์•ผํ•˜๋Š” ์ปค๋„ ํ•จ์ˆ˜๋กœ ์ •์˜๋œ ์ธํ„ฐ๋ŸฝํŠธ ๋ฒกํ„ฐ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌํ•˜๋Š” ์ปค๋„ ํ•จ์ˆ˜๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค.

        • ์ธํ„ฐ๋ŸฝํŠธ ๋ฒกํ„ฐ = [์ธํ„ฐ๋ŸฝํŠธ ๋ฒˆํ˜ธ: ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ์ฃผ์†Œ(์ฒ˜๋ฆฌ๋ฃจํ‹ด, ํ•ธ๋“ค๋Ÿฌ)]

  • MEMORY

    • CPU์˜ ์ž‘์—…๊ณต๊ฐ„

  • DISK

    • ํŒŒ์ผ์— ์ €์žฅ, ์ฝ์–ด๋“ค์ด๋Š” I/O์ธก๋ฉด

  • device controller

    • ๊ฐ I/O ๋””๋ฐ”์ด์Šค๋“ค์€ ๋””๋ฐ”์ด์Šค๋ฅผ ์ „๋‹ดํ•˜๋Š” ์ž‘์€ cpu๊ฐ™์€ ๊ฒƒ๋“ค์ด ๋ถ™์–ด์žˆ๋Š”๋ฐ ์ด๋ฅผ device controller๋ผ๊ณ  ํ•œ๋‹ค. (disk controller, usb controller, graphic controller,...)

    • I/O ๋””๋ฐ”์ด์Šค๋Š” ์„ฑ๋Šฅ (์ฒ˜๋ฆฌํ•˜๋Š” ์†๋„) ์ด ๋งŽ์ด ์ฐจ์ด๊ฐ€ ๋‚œ๋‹ค.

      • ์˜ˆ: Disk๋Š” CPU์— ๋น„ํ•ด 100๋งŒ๋ฐฐ ๊ฐ€๋Ÿ‰ ๋А๋ฆผ.

        ๋”ฐ๋ผ์„œ, CPU๊ฐ€ ์ง์ ‘ Disk๋ฅผ ๊ด€์žฅํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, disk controller๊ฐ€ ๋‹ด๋‹น

  • local Buffer:

    • ๋ฉ”์ธ CPU์˜ ์ž‘์—…๊ณต๊ฐ„์ธ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์žˆ๋“ฏ, ๊ฐ device controller์˜ ์ž‘์—…๊ณต๊ฐ„.

  • timer

    • ํŠน์ • ํ”„๋กœ๊ทธ๋žจ์ด CPU๋ฅผ ๋…์ ํ•˜๋Š” ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•œ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜

    • ์ปดํ“จํ„ฐ๊ฐ€ ์ผœ์ง€๋ฉด, OS๊ฐ€ CPU๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ฐ€ ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰์‹œ timer์— ๊ฐ’์„ ์„ธํŒ…ํ•œ ํ›„ CPU๋ฅผ ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์—๊ฒŒ ๋„˜๊ฒจ์ค€๋‹ค. ์ด ๋•Œ, ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์€ timer์— ์„ธํŒ…ํ•œ ์‹œ๊ฐ„์ด ๋‹ค ๋˜๋ฉด, CPU๋กœ interrupt๋ฅผ ๊ฑธ์–ด์ค€๋‹ค. (๋งค ํด๋Ÿญ ์‚ฌ์ดํด๋งˆ๋‹ค 1์”ฉ ๊ฐ์†Œํ•˜๋ฉด์„œ ํƒ€์ด๋จธ ๊ฐ’์ด 0์ด ๋˜๋ฉด ํƒ€์ด๋จธ ์ธํ„ฐ๋ŸฝํŠธ ๋ฐœ์ƒ)

    • time sharing(์‹œ๋ถ„ํ• )์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋„๋ฆฌ ์‚ฌ์šฉ๋จ.

  • DMA (Direct Memory Access)

    • ์›๋ž˜๋Š” CPU๋งŒ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ–ˆ์—ˆ๋Š”๋ฐ, CPU์— ๋…๋ฆฝ์ ์œผ๋กœ ์ง์ ‘ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ• ์ˆ˜ ์žˆ๊ฒŒ ๋จ.

    • ์ง์ ‘ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๋Š” ์ปจํŠธ๋กค๋Ÿฌ.

    • I/O์žฅ์น˜์˜ ๋ฐ์ดํ„ฐ๋Š” device controller์— ์˜ํ•ด local buffer๋กœ ์ด๋™ํ•œ๋‹ค.

      ์ด ๋•Œ ์ „์†กํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ๋งŽ์€ ๊ฒฝ์šฐ, ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ memory๋กœ copyํ•˜๋Š” ์ž‘์—…์„ cpu๊ฐ€ ํ•˜๊ฒŒ ๋˜๋ฉด ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ํฌ๋‹ค. ์ด๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๊ฒผ๋‹ค. DMA๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ๋‘ copy(์ „์†ก)ํ•œ ํ›„์— ์ „์†ก ์™„๋ฃŒ๋œ ์ธํ„ฐ๋ŸฝํŠธ๋ฅผ ๋‹จ ํ•œ๋ฒˆ๋งŒ ๊ฑธ๋ฉด ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๊ฐ์†Œํ•œ๋‹ค.

    • local buffer์˜ ํŠน์ • ํฌ๊ธฐ (๋ธ”๋Ÿญ or page์ •๋„์˜ ๋ฐ์ดํ„ฐ)๊ฐ€ ์Œ“์ด๋ฉด, ๊ทธ ๋•Œ cpu์— ํ•œ๋ฒˆ interrupt๋ฅผ ๊ฑธ์–ด์คŒ.

      (DMA๊ฐ€ Memory์— ๋‚ด์šฉ์„ copyํ•ด์ฃผ๊ณ , ๋ธ”๋Ÿญ ๋‹จ์œ„์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์Œ“์€ ๊ฒฝ์šฐ์—๋งŒcpu์— ์•Œ๋ ค์ฃผ์–ด interrupt๋‹นํ•˜๋Š” ๋นˆ๋„๋ฅผ ์ค„์—ฌ์คŒ)

    • cpu์˜ ์ค‘์žฌ ์—†์ด device controller๊ฐ€ device์˜ buffer storage๋‚ด์šฉ์„ ๋ฉ”๋ชจ๋ฆฌ์— block ๋‹จ์œ„๋กœ ์ง์ ‘ ์ „์†ก

    • byte๋‹จ์œ„๊ฐ€ ์•„๋‹Œ block(ํ˜น์€ page) ๋‹จ์œ„๋กœ ์ธํ„ฐ๋ŸฝํŠธ ๋ฐœ์ƒ.

  • Memory Controller

    • CPU์™€ DMA๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ•˜์ง€ ๋ชปํ•˜๋„๋ก ๊ตํ†ต์ •๋ฆฌํ•˜๋Š” ์—ญํ•  ์ˆ˜ํ–‰.

๐Ÿ’ป