신입 개발자로 공부한 내용 정리

운영체제(OS)의 종류

윤도ri 2022. 8. 10. 20:46

| 운영체제 (Operation System) 의 종류

1. OS/390 → TEMDAM OS (메인 프레임) → OS/400

 - Unix나오기 전의 운영체제들   - 낮은 레벨이다보니(디스크,메모리 등등  다 함께 관리해야 하다보니..) assembly 언어로 프로그램을 짰다. (Os/400까지)
 


* Assembly Language란?
- 기계어와 일대일 대응이 되는 컴퓨터 프로그래밍의 저급 언어이다.
- 컴퓨터 구조를 확립한 폰 노이만은 기계어로 코딩을 했지만 거의 사람들이 알아보기 어려워 보완하기 위해 나온 언어가 어셈블리 언어이다.

 

2. Unix

- Unix는 벨 연구소에서 연구를 위해 만든 운영체제이다. 

* Unix가 중요한 점

  : Unix를 만들기 위해 새로운 언어를 만들었다. → 이 언어가 바로 **C언어**

   (이때 80 퍼센트는 C언어 10퍼센트는 Assembly로 짰다고 한다.)

 

  • C 언어로 짜면 이점은 무엇일까?

 사람들이 이해하기 쉽다는 것이다. 기존에는 기계어로만 이루어져 있어 직접 코드를 짠 사람이 아니면 사용하기 어려웠다. 그래서 하드웨어 이식성이 좋은 언어로 알려져 있다. (코드를 내 마음대로 바꿀 수 있음)

 

 Unix의 탄생이 중요한 이유는 사람들이 이해할 수 있는 레벨인 C언어가 탄생했고 이때부터 오픈소스가 만들어지며 크게 발전했기 때문이다.

 

[ 종류 ]

System V, BSD Unix(OSX → IOS), Sun Solaris, AIX( IBM ), HP-UX, FreeBSD

 

3.MS-DOS (disk os)

  • 디스크만 관리해주는 프로그램이다.

4.Window

  • 지뢰찾기의 원조,,,ㅎㅎ
  • window 3.0 3.1 .. 이렇게 업그레이드하다가 ui툴을 씌운게 윈도우 95이다.

5.Macintosh (Mac)

  • 그래픽 사용자 인터페이스(GUI)와 마우스를 채용해 상업적으로 성공한 최초의 개인용 컴퓨터이다.(스티븐잡스가 함..멋찌다...)
  • OSX가 매킨토시의 10번째 버전이라고 생각하면 된다. 애플의 노트북을 맥북이라고 부르는 이유도 매킨토시부터 os가 발전했기 때문이다. 넘나 신기한것..

    *GUI란?

    :  UI를 그시각적으로 화면에 표시한 것이다. (ex: 웹 아이콘)

 

6.GNU/Linux

  • ‘리차드 스톨만’이라는 오픈소스 운동하는 사람이 GNU를 만듦.
  • Gnu is Not Unix - 'GNU는 유닉스가 아니다'라는 뜻의 재귀적 약어이다.
  • Unix를 clone해서 사용하는 회사들이 license를 걸면서 리차드 스톨만이 저작권에 걸리지 않는 소스를 가져다가 새로운 프로그램을 짜서 오픈소스로 공개하기 시작한다.
  • GNU는 갖다 써도 되는데 수정하고 나서는 똑같이 오픈소스로 공개해야 한다.

 GNU로 바뀌던 중 라누스라는 사람이 core 부분을 바꿔서 공개를 했다. 그것이 바로 리눅스이다. 리눅스의 core와 GNU의 shell이 합쳐진 게 우리가 알고 있는 리눅스이다. 공식 명칭은 GNU/Linux 라고 한다.

 

 또한 이 OS를 설치 할 수 있게 만들어주는 것이 배포판인데 배포판의 종류는 debian,ubuntu, Android, Red hat, WebOS,LiMo 등이 있다.

 

 간단히 설명을 하자면 안드로이드는 shell이 자바로 짠 shell이다. 우분투는 우분투 재단에서 만들고 있으며 Red hat 은 최초로 리눅스를 상용 배포한 회사이다. 오픈소스에 기여는 한다. WebOS는 안드로이드 초창기에 palmOS가 나올 때 만들어졌다. pam을 HP가 인수하면서 LG가 LG TV에 설치했다고 한다. LiMo는 삼성에서 만들던 OS 라고 한다.

그 밖에도 BlackBerryOs,Symbian 등등이 있다.

 

 

 

오늘은 OS의 종류와 탄생 배경에 대해 배웠다. OS의 구성과 Shell의 종류에 대해서 다음에 더 자세히 알아봐야겠다.