컴퓨터의 작동 원리

Dec 11, 2023
컴퓨터의 작동 원리

1. 시스템 구조

OS(Windows, Mac 등등)
HW(하드웨어 → 기계 장치)
→ Input하는 방법: 사용자가 CLI(키보드, 마우스, 마이크)로 OS에 명령 값을 보냄
ex) 마우스 a → OS → shell(OS언어) → 2진수 → HW
 
Java
사용자가 이해할 수 있는 명령어를 입력
C언어
C언어는 한번 만들면 해당 OS에 종속
가상머신(JVM)
각 OS에 맞게 명령어를 변환해서 보내줌
OS
정해진 OS에만 사용 가능
OS
여러 OS 사용 가능
HW
OS에 명령을 받아 실행
HW
OS에 명령을 받아 실행
→ .java = 사용자의 이해 / .class = 가상머신의 이해
→ 명령 사이에 다리(가상머신)가 생길수록 사용자가 편해지지만 속도는 느려짐.
 
  • 하이브리드 언어
    • 컴파일 (사전 번역) - 스크립트를 미리 받아 사전에 작업 완료, 전체를 .class를 바꾼 것
    • 인터프리터 (실시간 번역) - 동시에 번역하는 것처럼 한 줄 씩 읽고 실행
 
2진수
□ → 1bit
□□ → 2bit
□□□ → 3bit = 2³ = 8가지 경우의 수
00 → 0 종료
□□~□□(8개) → 8bit = 256 경우의 수
01 → 1 미풍
10 → 2 약풍
11 → 3 강풍
→ 문자 1개 ⇒ 1Byte, 문자들이 모여서 문장을 이룸
↳ 아스키 코드 표(전세계적 공유)
 
A —————전기선—————— B ⇒ 전기선이 연결되면 전류가 흐르면서 2진수를 10진수로 변환
java ↓ (아래로 명령)
JVM ↓
? ↑
OS ↓ 인코딩
디코딩 → ⓐ
OS ↑
HW ↓ (01010010010)
———————전류———————>
HW ↑ (위로 명령)
 
 

2. CPU와 RAM의 관계

CPU (연산장치)
RAM (메모리)
HDD (하드디스크)
레지스터
Data (문자 한 개)
물리적 장치 (영구적인 기록)
레지스터
Data (문자 한 개)
데이터 고정
Data ⇒ 1Byte
공간 하나 ⇒ 8bit(통신의 기본)
→ RAM (메모리): 전류로 데이터를 저장하기 때문에 휘발성의 특징
→ HDD (하드디스크): I/O(Input/Output)의 과정
↳ RAM이 자동으로 하드디스크에서 데이터를 주고 받을 때 (로딩, 부팅)
↳ 이 과정에서 시간이 가장 오래 소요 ⇒ 여기서 시간 축소가 중요
→ CPU: 필요한 데이터를 메모리에서 가져와 연산 후 다시 돌려보내는 과정
↳ 데이터를 가져왔을 때 필요한 저장 공간인 레지스터(또는 cash memory)가 존재
□ (레지스터) → 32bit =4Byte
한번에 데이터를 4칸씩 전달
□ (레지스터) → 64bit = 8Byte
한번에 데이터를 8칸씩 전달
→ 2배의 속도 차이 발생
 
  • cash (상대적 용어)
    • ↳ 가까이 있는 것을 cash라고 칭함.
      ↳ 엑세스할 수 있는 모든 것
      ↳ 하드디스크는 메모리를 cash라고 할 수 있음.
      💡
      엑세스 - 정보를 찾을 때
       
8bit → 1Btye (16GByte ⇒ 160억 Byte)
털 → 1TByte
기 → 1000MBtye ⇒ 1GBtye (십억Byte)
매 → 1000KByte ⇒ 1MBtye
갈 → 1000Byte ⇒ 1KByte
 
 
 
Share article

from-web-developer