엠마의 개발공부일지

[컴퓨터개론] 소프트웨어의 이해 본문

개념정리

[컴퓨터개론] 소프트웨어의 이해

Emmababy 2021. 1. 17. 12:41
728x90

 

 

컴파일러와 인터프리터

프로그래밍 언어의 종류에 따른 실행방식 차이

 

 

컴파일러(=번역기)

사람이 작성한 코드를, 컴퓨터가 이해할수있는 Machine code(0,1로 구성)로 변환하는 것

출처 : 코드잇

  • 장점 : 다른 컴퓨터에서는 Machine code만 있으면 프로그램 가동 가능 / 실행속도가 빠르다 / 코드유출X
  • 단점 : 수정해야할땐 "수정 -> 컴파일 -> 실행" 과정을 거쳐야 함(빠른 개발이 불가), 용량이 크다
  • ex) C, C++ (저수준언어)

 

인터프리터

코드를 한줄씩 즉흥적으로 실행되는것

  • 장점 : 코드수정 후 즉시실행, 
  • 단점 : 코드유출 가능, 용량이작다
  • ex) Python, Ruby (고수준언어)

 

 

 

운영체제 OS(Operating System)

하드웨어 위에서 동작가능하며, 앱 어플리케이션을 사용하기위해 깔려있어야 하는 전제

 

역할

  1. 하드웨어 - 앱을 연결 : 하드웨어와 앱의 종류가 다양해지더라도 서로 호환가능하게 함
  2. 저장 / 불러오기 : 종류에 따라 저장공간을 분배 (RAM-휘발성 / 하드디스크-비휘발성

출처 : 코드잇

   3.  여러프로그램 동시에 실행 : 애플리케이션 사이에 시간,공간을 조율 

      ex) 음악들으며 게임하고 채팅을 하는 멀티태스킹 수행

 

   4. 종류 

  • 데크스톱 : Window, MacOS, Linux
  • 모바일 : Android, iOS
  • 서버 : ubuntu, Unix 
  • 임베디드 : 실시간운영체제(정해진시간안에 확실히 처리), 종류가 매우 다양
728x90
Comments