저번에 그냥 홧김(?)에 쓴 컴퓨터 글에 눈도 달리고 해서 감격했...ㅜㅜㅋㅋㅋ
일주일에 한번정도 컴 관련 뻘글을 써볼까 싶은 생각이 들었습니다. 모르긴 몰라도 컴 없으면 안 되는 세상이 됐으니까요. 마침 간만에 커피를 왕창 먹었더니 잠도 안오고 좋네요.
컴퓨터 관련 내용은 역시 위든 아래든 정상을 벗어나야 쓸 맛이 나나봅니다.
잡설은 줄이고, 이번주에는 그냥 가볍게 운영체제에 대해 좀 보려고 합니다.
<< 주의!! 아래에 나오는 글은 기본적인 컴퓨터 지식을 매우매우 단순화해 전달하고 있으므로 컴퓨터 지식에 입문하기 위한 참고용으로만 사용하는 것이 좋습니다. 아래 글의 내용을 학과 레포트, 스터디, 친구와의 설전, 키배 등에 인용했을 시에 벌어질 일에 대해서는 책임지지 않습니다. >>
벌 거 아닙니다. 윈도우. 맥. 안드로이드. 뭐 이런거 말하는겁니다.
컴퓨터는 하드/램/CPU 등등의 하드웨어와, 오피스/한글/크롬/하스스톤 같은 소프트웨어가 있습니다.
하드웨어와 소프트웨어는 그냥 묶어서는 뭐가 되질 않죠. 하드웨어를 적당히 잘 구슬려서, 또 소프트웨어를 적절하게 읽어내서 서로 잘 돌아가도록 해주는 근간이 되는 시스템을 운영체제(Operating System; OS)라 합니다.
운영체제는 직접적으로 하드웨어에 접근할 수 있고(그러니 데이터를 읽고 쓰죠) 소프트웨어가 돌아가는 하나의 플랫폼이 됩니다. (플랫폼이라는 말 이쪽에선 참 많이 쓰이는 말입니다...)
얘기를 더 하기 전에 그림 하나 보고 가시죠.
2014년 운영체제 마켓쉐어 그래프입니다.
물논... 윈도우가 압도적입니다. 심지어 2등이 이젠 고인이 되신 XP입니다.
한참 뒤에 맥이 보이고, 리눅스는 겨우 1% 정도를 겨우 지키고 있네요.
그러면 뭐 공부할 필요 있냐? 고 의문을 가지실텐데, 사실 제가 지금 하고자 하는 얘기는 윈도우 얘기라기보다는 운영체제 전반에 관한 얘기라서 영 관련이 없으실 것 같은 분들 시간을 뺏지 않기 위해....
하지만 여길 보면 조금 말이 다릅니다.
위는 현재 가동중인 웹 서버가 어떤 운영체제를 사용하고 있는지에 대한 것만 따로 빼놓은 표입니다.
Unix, Unix-like가 반을 넘는 비율을 가지고 있네요? 윈도우도 많기는 하지만 압도적이지 못합니다.
위 링크 가서 보시면 다른 분야도 있는데, 윈도우는 별로 다른 분야에서는 압도적이지 못한게 사실입니다.
그래서 컴퓨터로 뭔가 좀 해보려는 분들은 필연적으로 여러 운영체제를 접할 수 밖에 없게 될 것이고,
그게 나중에 인터넷 쇼핑몰이라도 하나 차려보려는 내가 되지 않으리란 보장이 없으므로
운영체제가 뭔지, 어떤 종류가 있는지만이라도 대충 알아놓으면 좋지 않을까 합니다.
1. 운영체제의 구조
별 것 없습니다. 하드웨어부터 쭉 훑어봐도 될 정도로 별 거 없습니다.
하드웨어 - 커널 - 쉘 - 어플리케이션(소프트웨어)
로우레벨하이레벨
사실 운영체제의 생명은 저 커널(kernel)이라는 녀석입니다. 저게 진짜 하드웨어와 통신하고 소프트웨어(어플리케이션)을 작동시키는 기반이 되는 녀석이지요. 따라서 운영체제가 다르다는 것은 보통 커널이 다르다는 것을 말합니다. 쉘이란 녀석은 저 커널을 잘 포장해서 사용자에게 보여주고 상호작용할 수 있도록 하는 놈입니다. 우리가 일반적으로 보는 운영체제는 쉘인거죠. 커널이 같으면 쉘이 달라도 별로 사용에 지장이 없습니다. 그냥 윈도우 테마 바꾼 정도의 차이...?
윈도우, 맥, 그리고 리눅스의 X Windows 모두 사용자가 직관적으로 이해하기 쉬운 GUI(Graphic User Interface)를 택하고 있습니다. 그 영화같은데 보면 시꺼먼 화면에 글자만 나오는 거 있잖아요 그것도 쉘입니다. 단지 텍스트만을 통해 사용자와 상호작용하는 쉘인거죠. CLI(Command Line Interface)라고 부릅니다. 윈도우 쓰시는 분들 시작버튼 클릭하고 cmd 엔터 해보세요. 그럼 까만 창 하나 뜨는데 그게 CLI 입니다. 거기에 dir 이라고 쓰고 엔터 쳐보시면 영화같은데서 많이 보던 그런게.....ㅋㅋㅋㅋ ipconfig/all 치시면 컴퓨터 아이피 정보도 볼 수 있어용.
둘 다 장단점이 있습니다. 개발자(또는 워너비)분들은 아마 CLI와 더 친하거나 친해져야 할텐데요, 이게 몇 번 해보면 GUI 너무 거추장스럽습니다 ㅋㅋ 명령어도 바로바로 입력 못하고 한번에 여러 단계 건너뛰지도 못하고 뭔가 여튼 번잡함...ㅋㅋ
2. 운영체제의 특징
대표적으로 손꼽을 수 있는 운영체제가 Windows, OS X, Linux/Unix 가 있을 것이고, 모바일 쪽에서는 Android와 iOS가 양대산맥이죠(그냥 가면 좀 그러니까 유명을 달리 하신 타이젠과 바다에 조의를 잠시 표하고 갑시다...). 앞서 말했듯 하나의 운영체제는 소프트웨어 실행을 위한 플랫폼이 됩니다.
저 플랫폼들은 자기들 나름대로 하드웨어와 통신하는 방법이 있고, 자기들 나름의 소프트웨어를 돌리는 방식이 있습니다. 그래서 거의 대부분의 소프트웨어는 플랫폼에 의존적이죠. 쉽게 말해 윈도우 프로그램(exe 파일) 갖다가 맥에서 백날 돌려봐야 맥은 이게 뭔지 모른다는 겁니다. 물론 그렇지 않은 것들이 있습니다. 자바로 만든 프로그램이 대표적인데요, 자바는 JVM이라는 가상머신 위에서 자바 프로그램을 실행시킵니다. 따라서 JVM만 올라가 있다면 플랫폼에 상관없이 같은 자바 코드를 실행시킬 수 있다는 거죠. 멋있는 말로 크로스플랫폼이라 합니다. 물론 JVM자체는 플랫폼 종속적입니다.
리눅스에서 만든 자바 프로그램을 윈도우에서 돌릴 수 있다. 같은 JVM 위에서 작동하므로. 하지만 리눅스에 깔아놓은 JVM은 윈도우에 깔리지 않는다. JVM 자체는 플랫폼 종속적이므로.
나름 가장 쉽게 정리한거긴 한데... 그래도 뭔가 어렵군요...
3. 운영체제의 종류
윈도우는 다들 아시다시피 빌 게이츠가 설립한 MS의 운영체제입니다. 자체적으로 만든 윈도우 커널을 사용하고 있구요. XP이전에는 서버용과 덱탑용 커널을 따로 관리하고 있었으나 XP부터 서버용으로 모두 통합해 하나의 커널만을 개발하고 있습니다. 일반인 사용자들에게 가장 익숙하고 대중적인 운영체제입니다. 1번 사진처럼 전세계적으로 봤을 때 엄청난 비율을 차지하고 있죠.
맥은(정확히는 OS X가 맞습니다.) 잡스의 애플에서 만든 운영체제입니다. Unix 쉘을 적당히 자기들 입맛에 맞게 개조해서 사용하고 있구요(그래서 유닉스 명령어가 대부분 먹힙니다만 또 다는 아닙니다...) 마소와 피튀기게 전쟁하던 시절의 역사부터 보자면 사실 GUI 운영체제의 원조는 이쪽입니다.
아시는 분들은 다 아시겠지만 얘들은 어디 다른 기기에 막 자기들 운영체제 깔게 운영체제가 따로 안 나오죠. 기기랑 일체형입니다. 그래서 윈도우처럼 이놈저놈 다 지원하느라 주구장창 업데이트를 하지도 않고 블루스크린이 빵빵 터지지도 않고 최적화도 더 잘 돼있습니다. 예전에는 하드웨어도 다 자체적으로 만들다 도저히 안 돼서 요새는 인텔 CPU갖다 쓰고 합니다. 그래서 하드웨어 스펙만 동일하면 다른 기기에 맥을 깔 수도 있기는 해요.(흔히 해킨토시라고 하며, 이게 잘 먹히는 기기로는 모 회사의 인민에어라고 불리는 게 있습니다.) 그래도 개인적인 감상으로는 얘들껀 가성비가 너무 떨어지는 느낌입니다.
우리나라에서는 서민용이라는 인식은 별로 없지만, 사실 외국에서는 맥으로 첫 컴퓨터를 시작하는 사람들도 많아요. 그만큼 일반적 용도로 사용하는 데도 별 지장이 없다는 의미죠. 우리나라는 망할 hwp와 ActiveX때문에 윈도우 아니면 다 고자지만...ㅜㅜ
그리고 리눅스. 이게 참 좋은데 어떻게 표현할 방법이 없는 운영체제입니다. 리눅스라는 이름 자체는 리누즈 토발즈가 만든 커널을 의미합니다. 아직도 이 사람이 직접 리눅스 커널을 개발하고 있구요, 이걸 기반으로 여러가지 커스터마이징 + 쉘을 얹어서 리눅스 배포판이 나오고 있습니다. 레드햇, 페도라, 데비안, 우분투, 센트OS, 리눅스 민트.... 종류로 치자면 얘가 제일 많아요.
리눅스는 기본적으로 GNU라이센스를 따르게 돼 있어 사용에 제한이 없습니다. 네 공짜입니다. 심지어 소스코드도 공개돼 있습니다. 레드햇같은건 유료입니다. 요새는 운영체제는 그냥 주고 후속 서비스를 유료화하는 식으로 바뀐 것 같기는 하더군요. 여튼 윈도우나 맥처럼 돈 주고 안 사도 됩니다. 공홈 들어가보면 다 공짜로 다운받아 설치할 수 있어요. 넓게는 Unix계열의 운영체제라고 해서 리눅스와 기타 유사한 운영체제를 묶어 *nix라고 합니다.
일단 우리나라에서 일반인이 쓰기에는 제일 답 없는 운영체제는 맞습니다. 한글화된 문서도, AS 센터도 제대로 된 게 없으니까요. 게다가 뱅킹 안돼 관공서 안돼 한글 안돼 오피스 안돼(오피스는 됩니다..) 뭐 안돼 뭐 안돼... 그래도 위에서 보셨듯 서버/슈퍼컴퓨터 같은 곳에서는 절대적인 영향력을 가지고 있는 운영체제입니다. 저도 윈도우에서 개발해본 건 처음에 자바 배우면서 이클립스 좀 했던 정도랑 VS로 C 개발 조금 했던게 다인듯... 프로그래밍 공부하시려는 분들은 리눅스랑 친해놓으면 나중에 득볼 일이 꼭 있을거라 생각합니다.
흠... 써놓고 보니 좀 내용이 딱딱해지지 않았나 싶네요. 그냥 운영체제는 하드웨어와 소프트웨어를 이어주는 거야 헿헿 하면 끝인데 말이죠... 대충 이정도면 운영체제가 뭐고 종류가 뭐가 있다, 그리고 왜 컴 종류마다 프로그램들이 다 다른가 정도는 설명이 되지 않았나 싶습니다.
직업이 직업이다 보니 윈도우를 까고 리눅스를 좀 빠는 글이 됐습니다만...
그래서 아마 앞으로 리눅스 글을 또 쓰게 될 것 같습니다만...
그래도 가볍고 재밌게 봐주시면 감사하겠습니당~
제목 노리셧네..
ㄴㄴ 글쓰기 한시간 전에 제목만 아무생각없이 쳐놓고 있다가 그냥 저장했어요 ㅋㅋㅋ ㅇ벗다 지움요ㅋㅋㅋ
ㅋㅋㅋ넹 암튼 정보글 ㄱㅅ~
힘들게 썼으나 내일 출근길에 조회수를 보면 슬프겠지... 야동걸린 썰이 터지는 바람에 제 글은 묻힐듯...ㅋ
잘 읽었습니다. 역시 어렵군요, 컴퓨터는... ㅎ
그나저나 많이 늦었는데, 얼른 주무셔야 아침에 출근을... ㅋ
두시에 자도 기어나가기는 합니다 ㅋㅋㅋ
으헝 근데 이거 내용 어려운가요 많이?
쉽게 쓸라고 쓴건데 어려우면....흠....
내공이 부족한겐가....
제가 컴퓨터 똥멍청이라 그렇습니다. ㅎ
한때나마 코딩을 배워볼까(개발자를 해볼까) 생각했던 지난날을 반성하는 계기가... ㅋ
전공자도 아닌 저도 하는 걸 보면 꼭 그렇지만도 않습니다 ㅋㅋㅋ
글쓴이분은 이걸 어떻게 공부하셨나요?
이번에 노트북이나 데스크톱 하나 살려는데 너무 몰라서 참 사기 힘들더라고요 ㅠ cpu이름도 다들 너무 다르고 성능 어떻게 볼지도 모르겠고 좋으면 어느정도 좋은지 (롤이나 피온 따위가 돌아가느냐) 그래픽카드는 지포스정도는 순서 외웠었는데 4년 전에 외워서 지금은 하나도 기억도 안나고 지금이랑 맞지도 않고 ㅠㅠ
푸념이 길어졌지만 그ㄹ쓴이분은 컴터를 어떻게 공부하셨나요? 내 컴퓨터는 조립할 정도까진 무리라 할지라도 스펙정돈 보고 알 수 있으면 좋겠는데 ㅠㅠ
주변에 컴 잘하는 친구들한테 물어보고 주워듣기도 했구요 인터넷도 뒤적뒤적했고.. 책도 봤구요. 컴 관련 잡지 몇권만 보면 기본적인건 감이 옵니다. 또 직업 특성상 걍 알게 되더라구요 ㅋㅋ 저도 요새는 하드웨어 덕질을 안한지 좀 돼서 하드웨어 스펙은 잘 모르겠어요 저도.
흠 ㅠㅠ 컴공친구한테 매번 물어보기 미안해서 ㅠㅠ
네 일단은 글쓴이분 믿고 항상 좋아요를 누르며 칼럼을 다 정독해야겠군요!! ㅎㅎ
혹시 추천하실 책 있으신가요 ㅇㅅㅇ
처음에 컴 알기 시작하면서 여러 분야 잡지식 많이 얻은건 pc사랑이라는 잡지였어요. 아직도 발간중인걸로 알고 있구요. 도서관같은데 가도 있지 않을까 싶네요. 그리고 좀 깊이있는 지식 얻으시려면... 위키피디아가 접근성도 좋고 입문용으로는 나쁘지 않다고 봅니다.
옙ㅎㅎ 감사합니닿ㅎ
타이젠에 조의를 표하기엔 너무 이르지 않나요? 이제 첫 폰 나왔는데..
그런 의미에서 심비안과 미고에게 조의를 표합니다...
타이젠이 이제서야 첫 폰이 나왔기 때문에 조의를 표하는겁니다...
언제부터 설치던 건데 이제서야 첫 폰이 나왔죠 이제서야...
게다가 봐줄만한 물건이 아님....
하긴 오래되긴 했죠... 한 5년 넘었나요? 말 나온지
삼성이 가전제품에 타이젠깔아서 타이젠생태계 만드는게 장기적 목표인 것 같던데 잘 되려나 모르겠네요.
삼성에서 냅다 버리지는 않을테니 지켜는 보겠습니다만... 글쎄요... 그때 냅다 버릴걸 후회하게 되는 상황이 올지도...
IT쪽으로 관심많은 학생인데
글이 참 쉽고
재밌게 적혀있네요
좋은글 감사합니다
추가로 IT삼파전인
구글, 애플,MS에서
향후 승자는 어디라고 생각하시는지요?
옹 칭찬 감사합니다!
음... 저는 딱히 승자가 있을 거라고 생각하지 않아요. 다들 자기들만의 특색과 강점이 있고 선두를 달리는 분야들이 있으니까요. 개인적으로는 이런 식으로 경쟁이 빡세야 발전이 빠르다고 생각합니다. 어느 하나가 독식해버리면 시장은 정체되니까요
맞는말입니다
IT쪽이 가장 활발하게
공진화현상이
일어나고있죠
앞으로 모바일, 소프트웨어,
사물인터넷등
IT쪽으로 칼럼 많이
적어주시면 감사하겠습니다
마소랑 애플이 치열한 경쟁을 벌인게 아니라
본래 os쪽은 애플 걸 인정 문제는 그 즈음에 스티브잡스가 사장하고 분쟁이 일어나고 이사회에서 쫓겨나는 것과 같은 처우를 받게 되어 사퇴를 하고 그러자 애플이 멍청한 짓을 계속하다 마소나 다른 회사에 라이선싱 해줄 기회를 놓치게 되고 하다하다못해 다른 회사들이 개발하게 된 것