λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
  • Dev Blog

λΆ„λ₯˜ 전체보기51

[운영체제] 컀널과 μΈν„°νŽ˜μ΄μŠ€ 패슀트캠퍼슀 운영체제 κ°•μ˜μ™€ μ‰½κ²Œ λ°°μš°λŠ” 운영체제 κ΅μž¬μ— λŒ€ν•œ TILμž…λ‹ˆλ‹€. μ‹œμŠ€ν…œ 호좜(System Call) μ‹œμŠ€ν…œ ν˜ΈμΆœμ€ 컀널이 μžμ‹ μ„ λ³΄ν˜Έν•˜κΈ° μœ„ν•΄ λ§Œλ“  μΈν„°νŽ˜μ΄μŠ€λ‹€. 컀널은 컴퓨터 μžμ›μ„ λ³΄ν˜Έν•˜κΈ° μœ„ν•΄ μ‚¬μš©μžλ‚˜ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ μžμ›μ— 직접 μ ‘κ·Όν•˜λŠ” 것을 μ°¨λ‹¨ν•œλ‹€. λ”°λΌμ„œ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ μžμ›μ„ μ΄μš©ν•˜λ €λ©΄ μ‹œμŠ€ν…œ ν˜ΈμΆœμ΄λΌλŠ” μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ΄μš©ν•˜μ—¬ μ ‘κ·Όν•΄μ•Ό ν•œλ‹€. 보톡 μ‹œμŠ€ν…œ ν˜ΈμΆœμ„ 직접 μ‚¬μš©ν•˜κΈ°λ³΄λ‹€λŠ”, ν•΄λ‹Ή μ‹œμŠ€ν…œ ν˜ΈμΆœμ„ μ‚¬μš©ν•΄μ„œ λ§Œλ“  각 언어별 라이브러리(API)λ₯Ό μ‚¬μš©ν•œλ‹€. μœ„ 그림은 Cμ–Έμ–΄λ‘œ λ§Œλ“  μ‘μš© ν”„λ‘œκ·Έλž¨μ—μ„œ μ‹œμŠ€ν…œ ν˜ΈμΆœμ„ μ‚¬μš©ν•˜λŠ” μ˜ˆμ œμ΄λ‹€. μ΄λ•Œ, sys_open()μ΄λΌλŠ” μ‹œμŠ€ν…œ ν˜ΈμΆœμ„ 직접 μ‚¬μš©ν•˜λŠ” 것이 μ•„λ‹Œ Cμ–Έμ–΄ λΌμ΄λΈŒλŸ¬λ¦¬μ—μ„œ μ œκ³΅ν•΄ μ£ΌλŠ” open()을 μ‚¬μš©ν•œλ‹€. μ»€λ„μ˜ μ—­ν• κ³Ό μ’….. 2023. 4. 10.
[운영체제] 운영체제의 역사 패슀트캠퍼슀 운영체제 κ°•μ˜μ™€ μ‰½κ²Œ λ°°μš°λŠ” 운영체제 κ΅μž¬μ— λŒ€ν•œ TILμž…λ‹ˆλ‹€. 운영체제의 역사 1940λ…„λŒ€ 졜초의 컴퓨터 μ—λ‹ˆμ•…(ENIAC)이 λ§Œλ“€μ–΄μ‘Œλ‹€. 진곡관을 μ „μ„ μœΌλ‘œ μ—°κ²°ν•œ 것이 μ˜€λŠ˜λ‚ μ˜ ν”„λ‘œκ·Έλž¨μ„ λŒ€μ‹ ν•˜μ˜€λŠ”λ°, μ΄λ ‡κ²Œ 전선을 μ—°κ²°ν•˜μ—¬ λ…Όλ¦¬νšŒλ‘œλ₯Ό κ΅¬μ„±ν•˜λŠ” 것을 ν•˜λ“œμ™€μ΄μ–΄λ§ 방식이라고 ν•œλ‹€. 이 λ‹Ήμ‹œμ—λŠ” μš΄μ˜μ²΄μ œλΌλŠ” 것이 μ‘΄μž¬ν•˜μ§€ μ•Šμ•˜λ‹€. 1950λ…„λŒ€ 이 λ‹Ήμ‹œ μ»΄ν“¨ν„°μ—λŠ” λ―Έμ•½ν•˜μ§€λ§Œ CPU와 메인 λ©”λͺ¨λ¦¬κ°€ μžˆμ—ˆλ‹€. ν•˜μ§€λ§Œ, μ˜€λŠ˜λ‚ μ˜ ν‚€λ³΄λ“œλ‚˜ λͺ¨λ‹ˆν„° 같은 μž…μΆœλ ₯μž₯μΉ˜λŠ” μ—†μ—ˆλ‹€. λŒ€μ‹  μ²œκ³΅μΉ΄λ“œ 리더기λ₯Ό μž…λ ₯μž₯치둜, 라인 ν”„λ¦°ν„°λ₯Ό 좜λ ₯μž₯치둜 μ‚¬μš©ν–ˆλ‹€. μ²œκ³΅μΉ΄λ“œ μ‹œμŠ€ν…œμ€ μΉ΄λ“œμ— ꡬ멍을 λš«μ–΄ ν”„λ‘œκ·Έλž¨μ„ μž…λ ₯ν•œ ν›„ κ·Έ μ‹€ν–‰ν•œ κ²°κ³Όλ₯Ό 라인 ν”„λ¦°ν„°λ₯Ό 톡해 좜λ ₯ν•˜λŠ” ꡬ쑰닀. μ²œκ³΅μΉ΄λ“œ μ‹œμŠ€ν…œμœΌλ‘œ λ„˜μ–΄κ°€κ²Œ 된 κ°€μž₯ 큰 이유.. 2023. 4. 9.
[운영체제] μš΄μ˜μ²΄μ œλž€? 패슀트캠퍼슀 운영체제 κ°•μ˜μ™€ μ‰½κ²Œ λ°°μš°λŠ” 운영체제 κ΅μž¬μ— λŒ€ν•œ TILμž…λ‹ˆλ‹€. 운영체제의 μ •μ˜ 운영체제λ₯Ό ν•œλ§ˆλ””λ‘œ μ •μ˜ν•˜λ©΄ 컴퓨터 μžμ›μ„ 효율적으둜 κ΄€λ¦¬ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄μ΄λ‹€. πŸ’‘ 컴퓨터 μžμ› μ‹œμŠ€ν…œ μžμ›μ΄λΌκ³ λ„ λΆˆλ¦°λ‹€. μ‰½κ²Œ 말해 μ»΄ν“¨ν„°μ˜ ν•˜λ“œμ›¨μ–΄λ₯Ό μ˜λ―Έν•œλ‹€. - CPU, λ©”λͺ¨λ¦¬(DRAM, RAM) - μž…μΆœλ ₯ μž₯치: λͺ¨λ‹ˆν„°, ν‚€λ³΄λ“œ, 마우슀 - μ €μž₯ 맀체: SSD, HDD πŸ’‘ μ†Œν”„νŠΈμ›¨μ–΄ ν•˜λ“œμ›¨μ–΄λ₯Ό μ œμ–΄ν•˜μ—¬ μž‘μ—…μ„ μˆ˜ν–‰μ‹œν‚€λŠ” λͺ…λ Ήμ˜ λͺ¨μŒ, 즉 ν”„λ‘œκ·Έλž¨μ΄λ‹€. μ†Œν”„νŠΈμ›¨μ–΄λŠ” 크게 2κ°€μ§€λ‘œ λ‚˜λˆŒ 수 μžˆλ‹€. - μ‘μš© ν”„λ‘œκ·Έλž¨: μš°λ¦¬κ°€ ν”νžˆ μ‚¬μš©ν•˜λŠ” ν”„λ‘œκ·Έλž¨ - μ‹œμŠ€ν…œ μ†Œν”„νŠΈμ›¨μ–΄: 운영체제, μœ ν‹Έλ¦¬ν‹°(운영체제의 μž‘μ—…μ„ λ³΄μ‘°ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄) 운영체제 κ΄€μ μ—μ„œ λ³Έ 컴퓨터 ꡬ쑰 μš΄μ˜μ²΄μ œλŠ” μ•„λž˜ κ·Έλ¦Όκ³Ό 같이 컀널과 μΈν„°νŽ˜μ΄μŠ€λ‘œ.. 2023. 4. 8.
[HTTP] - HTTP 헀더 μΈν”„λŸ° κ°•μ˜ 쀑 λͺ¨λ“  개발자λ₯Ό μœ„ν•œ HTTP μ›Ή κΈ°λ³Έ μ§€μ‹μ΄λΌλŠ” κ°•μ˜μ— λŒ€ν•œ TILμž…λ‹ˆλ‹€. HTTP 헀더 1 - 일반 헀더 RFC 7230~7235의 HTTP λ©”μ‹œμ§€ ν‘œν˜„μ΄λž€ μš”μ²­μ΄λ‚˜ μ‘λ‹΅μ—μ„œ μ‹€μ œ 데이터λ₯Ό μ˜λ―Έν•œλ‹€. μ΄λŸ¬ν•œ ν‘œν˜„ λ°μ΄ν„°λŠ” νŽ˜μ΄λ‘œλ“œ, 즉 λ©”μ‹œμ§€ λ³Έλ¬Έ(Body)을 톡해 μ „λ‹¬λœλ‹€. μ΄λ•Œ, ν΄λΌμ΄μ–ΈνŠΈμ™€ μ„œλ²„λŠ” 각각의 μˆ˜μ‹ λœ HTTP λ©”μ‹œμ§€μ—μ„œ ν‘œν˜„ 데이터듀을 해석할 수 μžˆμ–΄μ•Ό ν•˜λŠ”λ° μ΄λŸ¬ν•œ 정보듀은 ν‘œν˜„ ν—€λ”μ—μ„œ μ œκ³΅ν•œλ‹€. λ‹€μŒμ€ HTTP λ©”μ‹œμ§€μ˜ ν‘œν˜„ ν—€λ”μ˜ μ˜ˆμ‹œλ“€μ΄λ‹€. Content-Type ν‘œν˜„ λ°μ΄ν„°μ˜ ν˜•μ‹μ— λŒ€ν•œ 정보λ₯Ό λ‹΄κ³  μžˆλŠ” 헀더이닀. λ‹€μŒμ€ μ‚¬μš© μ˜ˆμ‹œμ΄λ‹€. 1. Content-Type: text/html;charset=UTF-8 => ν‘œν˜„ λ°μ΄ν„°μ˜ ν˜•μ‹μ΄ HTML νŒŒμΌμ΄λΌλŠ” 것.. 2022. 8. 9.