Clasora

온라인 운영체제 선생님(한국어 수업)

한국어로 운영체제를 온라인에서 가르치세요

프로세스와 메모리부터 리눅스 명령줄까지, 운영체제를 한국어로 온라인에서 가르칠 수 있습니다. 수업료와 시간은 직접 정하고, Clasora는 수수료를 받지 않습니다.

한눈에 보기

역할
온라인 운영체제 선생님(한국어 수업)
장소
100% 온라인, 어디서든 가능합니다
일하는 방식
독립적으로 일합니다. 가격과 시간은 직접 정합니다.
게시일
거주 가능 국가
대한민국, 북한, 중국

운영체제는 프로그래머가 평소 당연하게 여기던 것들을 마침내 제대로 설명해 주는 과목입니다. 실행 중인 프로그램이 어떻게 컴퓨터 전체를 혼자 쓰는 것처럼 동작하는지, read()를 호출한 뒤 디스크에서 데이터가 도착하기까지 무슨 일이 일어나는지, 두 스레드가 같은 카운터를 각각 백만 번씩 늘렸는데 왜 결과가 좀처럼 이백만이 되지 않는지를 이 과목에서 배웁니다. 가상 메모리 강의는 다 이해한 것 같은데, 막상 주소 변환을 손으로 해 보라고 하면 막히는 학생이 적지 않습니다.

바로 여기서 선생님이 큰 도움이 됩니다. 동시성 버그는 눈에 잘 띄지 않고, 재현하기는 더 어렵습니다. 교재의 그림이 화면 속 코드와 딱 맞아떨어지는 일도 드뭅니다. 문제가 있는 프로그램을 직접 실행해 보이고, 어떤 스레드 실행 순서에서 오류가 나는지 짚어 준 뒤 그 자리에서 고쳐 주는 선생님이 있다면, 학생은 코드 앞에서 몇 시간씩 헤매지 않아도 됩니다. 실습도 마찬가지입니다. 옆에서 참을성 있게 이끌어 주는 사람이 있으면 명령어 목록만 붙잡고 있을 때보다 훨씬 빨리 리눅스 터미널에 익숙해집니다.

Clasora가 한국어로 가르치는 운영체제 선생님을 찾는 이유

Clasora는 학생이 사이트를 이용하는 언어로 수업하는 선생님을 그 학생에게 보여 줍니다. 한국어로 Clasora를 보는 학생에게는 한국어로 가르치는 선생님이 표시됩니다. 한국어로 가르친다면, 선생님을 찾는 사람은 바로 이 학생들입니다.

이 과목에서는 용어가 큰 몫을 합니다. “문맥 교환”, “페이지 폴트”, “임계 구역”, “교착 상태”, “경쟁 조건”은 저마다 정확한 뜻이 있고, 한국어 교재에서는 우리말 번역어와 영어 원어가 함께 쓰이는 경우가 많습니다. 매뉴얼과 오류 메시지는 대부분 영어로 되어 있기도 합니다. 두 가지 표현을 모두 알고 수업에서 쓰는 말 그대로 설명해 주는 선생님이 있으면, 학생은 이론과 터미널에서 보는 내용을 훨씬 쉽게 연결합니다.

Clasora는 선생님을 고용하지 않으며, 이 글은 채용 공고가 아닙니다. 선생님은 독립적으로 활동하며 수업료와 시간을 직접 정하고, 원하는 만큼만 가르칩니다. 개발 일을 하면서 일주일에 몇 번만 수업하는 분도 있고, 본업을 대신할 만큼 수업을 많이 하는 분도 있습니다.

Clasora에서 온라인으로 운영체제를 가르치는 하루

이 활동은 완전히 원격으로 이루어집니다. 모든 수업은 온라인으로 진행되며, 사는 곳 어디에서든 가르칠 수 있습니다.

학생은 선생님의 캘린더에서 바로 예약합니다. 학생에게는 선생님이 비어 있다고 표시한 시간만, 그것도 학생 자신의 시간대로 보입니다. 예약을 최소 얼마 전까지 받을지, 얼마나 먼 날짜까지 열어 둘지도 선생님이 정합니다.

수업은 브라우저에서 진행되고, 선생님도 학생도 아무것도 설치할 필요가 없습니다. 그리고 이 과목에는 화면 공유가 특히 잘 맞습니다. 리눅스 가상 머신에서 연 터미널을 공유해 ps나 strace를 실행하면, 학생은 프로세스와 시스템 콜이 나타나는 모습을 그 자리에서 봅니다. 짧은 C 프로그램을 gdb로 한 줄씩 따라가거나, 디지털 화이트보드에 페이지 테이블을 그려 놓고 함께 주소를 변환해 볼 수도 있습니다. 학생이 자기 화면을 공유하면 컴파일러 오류를 학생이 보는 그대로 확인할 수 있습니다. 통화 중 채팅은 명령어를 붙여 넣기에 편하고, 배경 흐림을 쓰면 방 안이 화면에 비치지 않습니다.

수업과 수업 사이에도 학생마다 선생님과의 대화가 따로 이어집니다. segmentation fault로 죽는 소스 파일, 통과하지 못한 테스트의 출력, 저장소 링크가 이곳으로 올 수 있고, 선생님은 메모나 짧은 연습 문제로 답할 수 있습니다. 메시지, 파일, 공유한 링크는 관련된 수업 옆에 함께 남습니다. 직접 만든 연습 문제는 개인 파일 공간에 보관할 수 있고, Google 드라이브에서 문서를 가져올 수도 있습니다. 한 주 일정을 Google 캘린더로 관리한다면 Clasora 캘린더와 동기화할 수 있습니다.

학생들이 자주 도움을 청하는 부분

프로세스와 스레드: fork, exec, wait가 각각 하는 일, 프로세스의 상태, 같은 프로세스 안의 스레드가 무엇을 공유하는지.

CPU 스케줄링: FCFS, SJF, 라운드 로빈, 우선순위 스케줄링. 간트 차트를 그리고 대기 시간과 반환 시간을 손으로 계산합니다.

동기화: 경쟁 조건, 임계 구역, 뮤텍스, 세마포어, 조건 변수, 그리고 생산자와 소비자 문제나 식사하는 철학자 문제 같은 고전적인 문제.

교착 상태: 교착 상태가 생기는 네 가지 조건, 자원 할당 그래프, 은행원 알고리즘.

메모리 관리: 페이징, 페이지 테이블과 TLB, 가상 메모리, FIFO와 LRU 같은 페이지 교체 알고리즘.

파일 시스템: 아이노드, 디렉터리, 하드 링크와 심볼릭 링크, 저널링, 그리고 파일을 지울 때 실제로 일어나는 일.

시스템 콜과 커널: 사용자 모드와 커널 모드, 인터럽트와 트랩, 코드 한 줄이 커널의 작업이 되기까지의 과정.

프로그래밍 과제: C로 만드는 간단한 셸, 스레드 풀, 메모리 할당기, 또는 xv6 같은 교육용 커널 수정.

리눅스와 명령줄: 파이프와 리다이렉션, 파일 권한, 프로세스와 시그널, SSH, Bash 스크립트.

시험 대비: 스케줄링과 페이지 교체 계산 문제를 매번 맞힐 때까지 반복해서 연습합니다.

현업 개발자 등: 자기 코드가 내부에서 실제로 무엇을 하는지 알고 싶은 개발자, 그리고 시스템 관리나 DevOps에 입문하는 사람.

이런 선생님을 찾습니다

프로그램과 하드웨어 사이에서 무슨 일이 일어나는지 설명할 수 있을 만큼 운영체제를 잘 알고, 학생이 머릿속에 그린 그림이 어디서 어긋났는지 알아챌 수 있는 분.

동시성 코드를 작성하고 디버깅해 본 경험이 있고, 리눅스 터미널과 이 과목 과제 대부분에 쓰이는 C 언어를 능숙하게 다루는 분.

한국어로 명확하게 설명하고, 추상적인 개념을 그림이나 열 줄 남짓한 프로그램으로 바꿔 눈에 보이게 보여 줄 수 있는 분.

대학에서 이 과목을 가르치는 분, 컴퓨터공학을 전공한 분, 이 과목을 탄탄하게 익힌 학생, 또는 시스템 프로그래밍이나 임베디드 개발, 서버 운영 등으로 매일 시스템을 다루는 분.

카메라와 마이크가 달린 컴퓨터, 안정적인 인터넷 연결, 그리고 시연에 쓸 리눅스 머신이나 가상 머신을 갖춘 분.

만 18세 이상인 분.

가르친 경험이 있으면 도움이 되지만, 꼭 필요하지는 않습니다.

선생님이 얻는 것

수수료 없음. 선생님이 정한 수업료에서 Clasora는 아무것도 떼어 가지 않습니다.

가입과 게시 모두 무료. 구독료도, 서비스 게시 비용도 없습니다.

수업료는 직접 정합니다. 수업 길이마다 수업료를 따로 정할 수 있고, 첫 수업을 무료로 제공할 수도 있습니다.

시간도 직접 정합니다. 매주 수업 가능한 시간과 쉬는 날, 예약 마감 시점, 얼마나 먼 날짜까지 예약을 받을지를 고를 수 있습니다.

나만의 공개 페이지. 서비스마다 독립된 페이지가 생겨 검색 엔진에서 찾을 수 있고, 방문자가 읽는 언어로 표시됩니다. 사진, 자기소개 영상, 가르치는 내용, 구사하는 언어, 수업 길이별 수업료가 실립니다.

의미 있는 리뷰. 학생들은 지식, 명확성, 참여도를 기준으로 선생님을 평가합니다.

확인된 자격. 학위나 자격증을 프로필에 추가할 수 있고, 운영진이 이를 확인합니다.

브라우저에서 끝나는 수업. 화면 공유, 배경 흐림, 통화 중 채팅을 지원하는 화상 수업이라 누구도 아무것도 설치할 필요가 없습니다.

시작하는 방법

이 페이지의 버튼으로 계정을 만듭니다.

운영체제 서비스를 게시합니다.

캘린더를 열고 수업 가능한 시간을 표시합니다.

몇 분이면 끝납니다. 선생님으로 등록할 때 이용 약관에 동의하게 되며, 서비스는 공개되기 전에 운영진이 검토합니다.

선생님들이 자주 묻는 질문

커널 개발 경험이 꼭 있어야 하나요?

아닙니다. 가르치려는 내용을 확실히 알고 알기 쉽게 설명할 수 있으면 됩니다. 학위나 다른 자격이 있다면 프로필에 추가해 주세요. 운영진이 확인합니다.

리눅스와 명령줄만 가르쳐도 되나요?

네. 무엇을 가르치는지는 서비스에 직접 적기 때문에, 과목 전체를 다룰 수도 있고 이론이나 실습만 가르칠 수도 있습니다.

수업 중에 터미널은 어떻게 보여 주나요?

화면 공유를 씁니다. 리눅스 가상 머신이나 원격 서버에 터미널을 열어 두고 그 자리에서 명령을 실행하는 방법이 간편합니다. 학생은 수업 전후에 코드와 오류 메시지를 대화로 보낼 수도 있습니다.

학생 컴퓨터에도 리눅스가 있어야 하나요?

수업만 듣는다면 브라우저로 충분합니다. 연습할 때는 리눅스 가상 머신이나 윈도우의 WSL을 쓰는 경우가 많습니다.

수업료는 어떻게 받나요?

카드 결제는 아직 켜져 있지 않습니다. 지금은 카드 없이 예약이 확정되고, 수업료는 선생님과 학생이 직접 주고받습니다. Clasora는 수수료를 받지 않습니다.

Clasora에서 수업을 시작하세요

계정을 만들고, 서비스를 하나 올리고, 캘린더를 여세요. 몇 분이면 되고 비용은 없습니다.