-
1강 - 개발 배경 지식 (HW & OS & SW)SSAC 입문과정 202105 2021. 5. 20. 02:44728x90
1. HW & OS & SW
하드웨어(Hardware = HW)란,
컴퓨터를 사용하기 위한 물리적인 장비 모두를 말하는 단어입니다.
예를들어 키보드, 마우스, 모니터 기타등등의 디바이스를 말하기도 하구요.
또는 하드웨어라고 하면은 cpu, 메모리, 저장장치 같은 내부장치를 주로 말하는게 대부분입니다.
보통 컴퓨터를 사기 위해서 하드웨어를 본다고 하면은
cpu, 메모리, 저장장치 이 세개의 성능이 어떻게 되는건지 가장 유의깊게 봅니다.
그러면 cpu, 메모리, 저장장치는 어떤것인지 살펴보겠습니다.
cpu는 컴퓨터에 가장 핵심이 되는 부분입니다.
인간을 비유로 하자면은 뇌라고 보면 됩니다. cpu와 소통하는건 일반적으로 메모리인데
메모리라 하면은 보통 RAM을 의미하기 하죠.
RAM은 주기억 장치라고 말하기도 하고요. 인간으로 따지면 손으로 보면 됩니다.
cpu에서 각종 연산을 통해서 어떤 계산 결과를 가지고 나오면
RAM이라는 애가 실제 프로세스를 돌리면서 프로세스를 진행시키는 거죠.
개발을 위해서라면은 RAM메모리는 최소 8GB를 권장하고,
그래도 나는 괜찮은 성능의 컴퓨터를 사고 싶다 한다면 기본 16GB이상의 메모리를 사용하는 것을
권장합니다. 그래야 개발하는데 무리가 없을거예요.
저장장치는 요즘 SSD 많이 사용합니다.
SSD를 인간으로 비유하자면, 가방같은 존재예요.
예를 들어 카카오톡이라는 어플리케이션을 실행시키고 싶다면
① 카카오톡이라는 프로그램 자체는 이 SSD라는 보조기억장치에 프로그램이 설치가 되어 있는거예요.
카카오톡을 더블 클릭해서 사용을 하려고 하는 순간 가방에서 꺼내져서 RAM으로 옮겨가게 됩니다.
② 카카오톡을 사용하면 RAM에서는 프로세스를 인식하고 프로세스를 돌리는데 필요한 연산들을
cpu와 소통하면서 ③ 받아 냅니다.
이런 식으로 보통 컴퓨터가 작동을 합니다.
운영체제(Operation System = OS)란,
컴퓨터 자체로는 하드웨어 자원을 분배하거는 등 잘 못 합니다.
컴퓨터를 잘 작동 시키기 위해서 어떤 일을 먼저 처리할지 다음 할 일은 무엇인지
이런식으로 컴퓨터의 비서역할 컴퓨터의 자원을 어떻게 활용할 것인지 도와주는 역할을 하는 것이 바로
Operation System 운영체제 라는 것입니다.
운영체제도 종류가 다양한데요.
맥, 리눅스, 윈도우 등등 여러가지 OS가 있습니다.
보통 우리나라에서 주로 사용하는 것은 윈도우 또는 맥이겠죠.
그냥 지나가는 소리로 펭귄모양의 아이콘이 바로 리눅스계열의 OS인데
리눅스 계열의 OS는 맥이나 윈도우처럼 돈을 받고 파는 것이 아니라
인터넷에서 무료로 받아서 사용할 수 있습니다.
그렇기 때문에 세계적으로 가장 많이 사용되는 OS중에 하나구요.
실제로 어떤 서버 컴퓨터를 구축한다 하면은 대부분 리눅스 기반의 컴퓨터로 하는게 일반적입니다.
다음 살펴볼 내용은 SW 입니다.
소프트웨어란 어떤 프로그램이라고 생각하시면 됩니다.
좀 더 넓게 보자면, operation system도 소프트웨어라고 볼 수 있는데,
주로 편하게 말할 때 소프트웨어라는 것은 카카오톡, 크롬, 한글 오피스 등 이런 프로그램과 같다고 하겠습니다.
프로그램 VS 프로세스의 차이점은 무엇인가요?
프로그램은 어떤 프로그램이던 코드로 이루어져 있는 코드 뭉치예요.
빌드되어 실행될 수 있도록 직전의 상태를 프로그램이라 하죠.
프로그램은 가방 안에 들어가 잇는겁니다.
실행되진 않고 설치만 되어있을 때 그거를 프로그램이라고 합니다.
프로그램을 더블클릭을 해서 실행시켰을 때 프로세스라고 말을 합니다.
즉, 프로그램이 실행되면은 프로세스라고 한다.
ctrl + alt + delete 를 누르면 작업관리자에서 실행되고 있는 프로세스들을 확인할 수 있습니다.
프로그래밍 언어는,
c언아 파이썬 php javascript 등 엄청나게 많은데,
이들은 표현 방식이 다를 뿐이죠.
어떤 언어든 결국에는 0과 1 디지털데이터로 변환된다는 점에서는 모두 동일합니다.
똑같은 일을 하더라도 1이라는 숫자를 눈에 보이게 출력하고 싶다면
JAVA 언어 같은 경우는 console.log(1);
python 언어의 경우는 print(1);
표현 방식만 다른거지 결국에는 0과 1로 변환하게(컴파일) 됩니다.
사용자가 1이라는 숫자를 보고 싶어 하는구나 이런식으로 인식하게 되는 것이죠.
표현 방식도 다르고 사용되는 분야도 다르니까
내가 어떤 프로그램을 만들고 싶은지 어떤 목적으로 프로그램을 배우는가에 따라서
처음 배울 언어를 배우는게 좋게죠.
'SSAC 입문과정 202105' 카테고리의 다른 글
2강 - 코드가 왜, 어떻게 화면으로 표시가 되나요? (0) 2021.05.24 1강 - 개발 배경 지식(GIT) (0) 2021.05.20 1강 - 개발 배경 지식 (Library & Framework & API) (0) 2021.05.20 1강 - 개발 배경 지식 (Network) (0) 2021.05.20 Visual Studio code설치 (비주얼스튜디오 코드 에디터 사용) (0) 2021.05.18