요약
개발자는 프로그래밍 언어를 통해 운영체제 위에 돌아가는 프로그램을 만드는 사람들이다.
컴퓨터가 일하는 방식
컴퓨터는 크게 아래와 같이 이루어진다.
- CPU : 중앙처리장치. 컴퓨터의 머리에 해당한다. 처리/연산을 담당한다.
- HDD / SSD : 기억장치. 데이터 저장소에 해당한다.
- RAM : 메모리. 임의 접근 기억 장치. 임시 저장소에 해당한다. 휘발성 메모리다.
CPU는 데이터를 저장할 수 없다. 때문에 CPU가 처리/연산 시, HDD 또는 SSD에서 저장된 데이터를 CPU에게 주어야 한다. 하지만 HDD/SSD의 공간이 너무 방대해서 데이터를 찾는데 시간이 오래 걸리기 때문에 CPU는 RAM에 휘발성 데이터를 저장/요청한다. 이로 인해 처리/연산을 빠르게 처리할 수 있다.
운영체제(OS)란
운영체제는 Operating System의 약자다. 위와 같이 CPU, HDD/SSD, RAM이 일하는 경우 우리는 이렇게 명령해야 한다.
HDD에 접근해서 포토샵 데이터를 RAM에 올린 뒤 CPU에게 처리를 시키자!
하지만 우리는 포토샵 작업을 할 때 이렇게 컴퓨터에 명령을 내리지 않고, 바로가기 더블클릭을 한다. 이를 가능하게 해주는 것이 운영체제다. 즉, 운영체제는 컴퓨터의 하드웨어를 관리해주는 시스템 소프트웨어다.
운영체제(OS)의 종류
운영체제는 제작사와 사용 기기에 따라 다른 언어를 사용한다. 자세한 내용은 아래와 같다.
OS | Window | Mac | IOS | Android |
제작사 | Microsoft | Apple | ||
사용 기기 | PC | PC | Mobile | Mobile |
사용 언어 | C# Visual Basic Java Script... |
Objective-C Swift |
JAVA Kotlin |
JAVA와 JVM
하나의 프로그램을 여러 운영체제에서 동작하게 하려면 여러 언어를 사용해야한다. 이를 해결하기 하기 위해 JVM이 만들어졌다. JVM은 Java Virtual Machine의 약자로, PC 기반 운영체제 위에 JVM을 얹어 JAVA 언어로 만든 프로그램이 동작할 수 있도록 하는 소프트웨어다. 이렇게 하면 여러 언어를 사용할 필요 없이 JAVA만 알면 된다.
운영체제와 JVM과 JAVA기반의 프로그램이 동시에 돌아가야 하기 때문에 실행 속도가 느리다. 이로 인해 고사양인 PC에 적합하며 용량과 성능에 제한이 있는 Mobile에서는 덜 발전하게 되었다.
'달밤에 코딩하기 > 커뮤니케이션을 위한 IT 지식' 카테고리의 다른 글
#6-애플리케이션 (0) | 2021.08.20 |
---|---|
#5-개발자와 API (API, RESTful API, CRUD, JSON) (0) | 2021.08.20 |
#4-개발자가 리눅스를 사용하는 이유 (리눅스, 우분투) (0) | 2021.08.20 |
#3-네트워크 이해하기 (서버, 클라이언트, IP) (0) | 2021.08.20 |
#1-개발자가 하는 일1 (컴파일러, 개발 언어, IDE) (0) | 2021.08.20 |