기억보다 기록을

[OS] 비전공자가 운영체제를 공부하는 단계별 4가지 방법 (경험담, 장단점, 후기) 본문

CS/OS

[OS] 비전공자가 운영체제를 공부하는 단계별 4가지 방법 (경험담, 장단점, 후기)

juyeong 2023. 3. 12. 17:12
반응형

 안녕하세요. 처음 개발자가 되기 위해 국비수업을 수료한 뒤 저에게 부족한 부분들을 채우려고 부단히 노력했던 것 같습니다. 정보처리기사 자격증을 공부하기도 했고, 소위 4대 영역이라 불리는 "데이터베이스, 운영체제, 네트워크, 자료구조" 지식의 부족을 채우기 위해 여러가지 방법을 실천하며 저만의 데이터를 쌓아왔습니다. 그 중 운영체제를 공부하는 방법을 공유하고자 합니다. 비전공자에게는 조금 낯설게 느껴지는 단어일 수 있지만, 위에 언급한 4가지 영역의 토대를 쌓으면서 결국 그 지식들이 아주 밀접한 선으로 연결되어 있고 그 위에 개발 지식을 쌓는 것이 얼마나 중요한 것인지를 이제 어렴풋이 알 것 같습니다.

 저에게 맞는 방법을 찾아갔던 경험담일 뿐 이글은 정답이 아닙니다. 또한 이 과정의 결과로 제가 "운영체제를 안다"고 말하기도 어렵습니다. 다만, 이렇게 공부하는 것이 저에겐 도움이 되었고 이제 막 개발공부를 시작하며 운영체제 공부의 막막함을 느끼고 구글 속을 서핑하고 계실 분들에게 도움이 되었으면 좋겠습니다. 

 

 

[0단계]하버드 CS50

 운영체제는 Computer Science에 속하므로 운영체제를 시작하기 전 CS가 무엇인지 찍먹하는 과정이 필요하다고 생각합니다. 하버드의 강의인데 네이버에서 무료로 수강할 수 있어요. cs50을 수강하고 정리한 글을 토대로 발표하는 스터디를 운영했었는데, 스터디원들 모두 만족했던 강의입니다. 친절하고, 직관적이며, 명쾌합니다. 개인적으로 정말 재미있게 수강했던 강의였고 매번 머릿속에 전구가 켜지듯 "이게 그거구나!" 깨달음을 얻었던 기억이 납니다. 

 해당 스터디를 하며 정리한 글을 제 블로그의 CS/cs50 카테고리에서 확인할 수 있습니다.(https://juyeongpark.tistory.com/category/CS/cs50) 이 강의에서 다룬 개념들을 나중에 마주쳤을 때 "이게 그거였지." 라고 머릿속에 마인드맵을 그릴 수 있어서 처음 CS를 접하는 분들은 모두 한번쯤 들어보셨으면 좋겠습니다. 

 

강의링크: https://www.edwith.org/cs50

 

[해외명강] 컴퓨터 과학 교양 강좌: CS50 강좌소개 : edwith

- 커넥트재단

www.edwith.org

 

 

[1단계] 혼자 공부하는 컴퓨터 구조 + 운영체제

  

CS50 다음단계로 추천하는 책입니다. 사실 저는 2단계의 "쉽게 배우는 운영체제" 스터디에 참여하며 공부했습니다. 뒤에 언급하겠지만, 그 책은 운영체제에 대해 모르는 사람이 소화하기엔 난이도가 있다고 생각했습니다. 그러던 중 한빛미디어에서 "혼자 공부하는 00" 시리즈의 운영체제 책을 곧 발간하며, 베타리더를 모집하고 있다는 소식을 듣고 지원하여 책을 피드백하는 기회를 얻게 되었습니다. 베타리더는 처음이었는데요, 책이 출간되기 전 수정되지 않은 버전을 받고 학습자 입장에서 책의 부족한 점이나 개선사항을 제시하는 역할을 했습니다. 책에 인쇄된 제 이름이 뿌듯했고, 한빛미디어에서 완성본 책을 보내주셔서 실물책으로 소장중입니다.

 

 제가 드린 피드백이 유효한 도움이 되었는지 알 수 없으나, 저 나름대로 한장한장 꼼꼼히 리뷰하며 의견을 전달드렸던 기억이 납니다. 책을 리뷰하며 느낀 점은 이 책이 CS50 다음 단계로 아주 적합하다는 것이었습니다. 어렵지 않고, 운영체제가 어렵다는 인식을 갖지 않도록 초보자의 눈높이에서 설명해줍니다. 

 운영체제 학습의 필요를 느끼지 못한 사람이라도, 이 책을 통해 운영체제의 중요성을 깨달을 수 있으리라 생각합니다. 혼자 공부하는 분들을 위해 쓰여진만큼 매우 친절하고, 도식화가 잘 되어있어 내용 이해도 수월합니다. 무작정 암기하는 것보다 운영체제가 어떻게 동작하는지 그 원리를 파악할 수 있습니다.

 

 

[2단계] 쉽게 배우는 운영체제

 그 다음 단계로 추천하는 책입니다. 이 책은 운영체제를 공부하는 분들에게 정말 유명한 책이더라고요. 저도 주위의 추천을 받고 스터디에 참여하게 되었습니다. 한가지 재밌었던 점은, 스터디 후반부가 될수록 공통된 의견이 있었습니다. "쉽게 설명하려 노력하는데 오히려 그 노력때문에 흐름이 어색해진다." 였습니다. 저자분이 정말 친절하게 요리사를 예시로 들며 운영체제를 설명해주는데, 그 설명이 처음엔 정말 재밌고 이해에도 도움이 됩니다. 그런데 뒤의 어려운 개념이 나오면서 이 개념에 요리사가 더해지면.. "어렵다! 근데 요리사..?" 라는 혼란이 생기면서 오히려 좀 더 헷갈리는 상황이 발생합니다..^^; 그래서 이 책 이전에 운영체제에 대해 한번 훑어보고 오는 것을 추천합니다. 책에서 요리사 예시가 정말 많이 나오는데 최근 인쇄된 2판은 아예 요리사 컨셉으로 바뀌었더라고요. 

집에 소장해두고 궁금한 개념이 있을 때마다 꺼내게 되는 책이 될것이라 생각힙니다. 또, 완전히 쉬운 책은 아니기 때문에 2단계로 추천드립니다. 

 

[3단계] KOCW 반효경 교수님 강의

 

 kocw라는 싸이트가 있습니다. 대학강의를 온라인에 공유하는 플랫폼이에요. 이 중 이화여자대학교 반효경 교수님의 운영체제 강의가 정말 좋았습니다. 개인적으로 2단계의 책과 병행하며 공부하면 큰 시너지 효과가 난다고 느꼈어요. 머리속에 운영체제 관련된 개념을 쏙쏙 던져주시는데, 그 개념을 내 것으로 만들기만 해도 정말 큰 수확입니다. 설명도 정말 잘해주시고, 단점이라면 강의 시간이 길다는 점이지만 긴 시간 내내 버릴 것이 없습니다 .. 

https://fir-roll-5bc.notion.site/c9765600021442dd990d0395c1921aa7

미리보기

 

 

운영체제

운영체제 1강

fir-roll-5bc.notion.site

이 링크에서 1강을 정리한 내용을 볼 수 있습니다. (강의를 들으며 바로바로 정리해서 정신없는 부분이 많습니다.^^;) 그냥 이런 느낌이구나 참고하시면 될 것 같아요. 아래 링크에서 강의를 수강할 수 있습니다. 

강의링크: http://www.kocw.net/home/search/kemView.do?kemId=1046323 

 

운영체제

운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 모든 컴퓨터 시스템의 필수적인 부분이다. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각

www.kocw.net

 

 

이 글이 운영체제를 처음 공부하는 분들에게 도움이 되었으면 좋겠습니다. 😁

반응형

'CS > OS' 카테고리의 다른 글

[Network/OS] CDN, Load Balancer, 선점형/비선점형 스케쥴링  (0) 2022.04.16