리눅스 시스템 프로그래밍 - 이론과 실습

리눅스 시스템 프로그래밍 - 이론과 실습

(6개의 수강평)

220명의 수강생

33,000원

평생
초급, 중급
수료증
50개 수업, 총 13시간 2분
위시리스트 추가

리눅스 시스템 프로그래밍 - 이론과 실습

리눅스 시스템 프로그래밍(이하 LSP)은 리눅스가 제공하는 프로그래밍 인터페이스를 통해 리눅스 시스템을 제어/관리할 수 있는 어플리케이션을 작성하는 것을 말한다. LSP는 다른 개발 환경에 비해 low-level 인터페이스를 사용해야 하기 때문에 익숙하지 않은 사람에게는 불편하고, 무식하고, 불친절해 보일 수 있다. 그래서 어렵게 느껴질 수 있다.

하지만, LSP 만큼 리눅스와 친한 개발자를 만드는 과정은 없다.
LSP는 가장 단순한 방법으로 리눅스 커널과 interaction 하기 때문에 리눅스와 컴퓨터 시스템의 동작 과정에 대한 이해를 도울 수 있다. 또한 리눅스 디바이스 드라이버, 커널 프로그래밍 등으로 영역을 넓히기 위해서는 반드시 LSP를 익혀야 한다. 본 강좌는 주제별 이론과 프로그래밍 실습을 병행하여 학습 효과를 극대화할 수 있도록 만들었다. 수많은 API를 나열하고 소개하는 것에 그치지 않는다.

15년의 개발 경험에 비춰봤을 때 반드시 알아야 하고, 자주 사용되며, 혼동될만한 것들을 중점적으로 다뤄 핵심적인 내용을 수강생들에게 효과적으로 전달할 수 있도록 했다. 특히 주제별 실습을 빈 파일에서부터 실습을 시작하여 구현, 테스트, 디버깅의 모든 과정을 그대로 보여주는 라이브 프로그래밍으로 준비하여, 이런 일련의 개발 과정을 초심자들이 보고 따라하며 배울 수 있다.

학습 목표

  • 주제별 핵심 이론을 빠르게 습득하여 리눅스 프로그래밍 전반에 이해를 높인다.
  • 프로그래밍 실습을 통해 개념과 이론 뿐만 아니라 API 사용법과 동작 방식까지 습득하게 한다.

 도움이 되는 분들

  • 리눅스 개발자가 되고 싶은 분들
  • 빠르게 리눅스 개발에 적응하고 싶으신 분들
  • 리눅스를 책으로만 배웠지 무엇을 어떻게 해야할 지 모르겠는 분들
 

 강의 실습 환경

  • 강의 실습은 Windows 10 호스트에 VirtualBox를 이용한 가상머신을 생성하고, 가상머신에 Ubuntu-18.04를 설치해 구성했습니다. (반드시 똑같은 구성일 필요는 없으며, 리눅스를 사용하실 수 있는 환경이면 실습 가능합니다)
  • 가상머신 설치 및 동작에 정확한 최소 사양을 말씀드리기는 어렵지만, 아래 사양이면 가상머신을 이용한 실습 환경 구성이 가능할 것 같습니다. - 2GHz/Dual core 이상의 CPU - 4GB 이상의 시스템 메모리 - 20GB 이상의 디스크 용량
  • VirtualBox 설치, 가상머신 생성, 가상머신에 Ubuntu-18.04 설치 등은 "실습 환경 구성(가상머신)" 동영상을 참고하시길 바랍니다.

참고 사항

  • 기본적인 C 언어 문법에 대한 이해를 필요로 합니다.

연관된 강좌

리눅스 IPC 프로그래밍 - 이론과 실습 
리눅스 IPC 도구의 종류와 특징을 파악하고,
프로그래밍할 수 있는 능력을 키웁니다.

지식공유자 소개

ProgCoach4U

리눅스 환경에서 15년 동안 개발자로 일했고, 지금도 개발자로 일하고 있습니다 :)

강좌 외 문의사항은 progcoach4u@gmail.com으로 보내주세요 ;)

 

교육과정

모두 펼치기 50 강의 13시간 2분
섹션 1. 파일 다루기(basic)
7 강의 71 : 00
파일 열기/닫기
10 : 00
파일 열기/닫기 - 라이브 프로그래밍
13 : 00
파일 포지션
03 : 00
파일 포지션 - 라이브 프로그래밍
15 : 00
파일 읽고 쓰기
16 : 00
파일 읽고 쓰기 - 라이브 프로그래밍
14 : 00
파일 다루기(basic) : 강의자료
섹션 2. 파일 다루기(low-level)
9 강의 111 : 00
저수준 파일 열기/닫기, 스트림 포지션
18 : 00
저수준 파일 열기/닫기, 스트림 포지션 - 라이브 프로그래밍
18 : 00
저수준 파일 문자/문자열 읽고 쓰기
08 : 00
저수준 파일 문자/문자열 읽고 쓰기 - 라이브 프로그래밍
26 : 00
하드링크와 소프트링크
08 : 00
하드링크와 소프트링크 - 라이브 프로그래밍
16 : 00
파일 속성
07 : 00
파일 속성 - 라이브 프로그래밍
10 : 00
파일 다루기(low-level) : 강의자료
섹션 3. 파일 다루기(advanced)
15 강의 270 : 00
Directory 다루기
09 : 00
Directory 다루기 - 라이브 프로그래밍
13 : 00
Memory map
17 : 00
memory map - 라이브 프로그래밍
17 : 00
파일을 이용한 동기화
15 : 00
파일을 이용한 동기화 - 라이브 프로그래밍
26 : 00
파일 속성 제어
09 : 00
파일 속성 제어 - 라이브 프로그래밍
19 : 00
파일 이벤트
22 : 00
파일 이벤트 - 라이브 프로그래밍
24 : 00
I/O Multiplexing(select)
24 : 00
I/O Multiplexing(select) - 라이브 프로그래밍
25 : 00
I/O Multiplexing(epoll)
28 : 00
I/O Multiplexing(epoll) - 라이브 프로그래밍
22 : 00
파일 다루기(advanced) : 강의자료
섹션 4. 프로세스와 쓰레드
9 강의 166 : 00
프로세스 개념, 프로세스 생성
21 : 00
프로세스 개념, 프로세스 생성 - 라이브 프로그래밍
11 : 00
프로그램 실행과 종료처리
30 : 00
프로그램 실행과 종료처리 - 라이브 프로그래밍
18 : 00
프로세서 친화
21 : 00
프로세서 친화 - 라이브 프로그래밍
15 : 00
쓰레드 개념, 쓰레드 생성/종료/조인/동기화
23 : 00
쓰레드 개념, 쓰레드 생성/종료/조인/동기화 - 라이브 프로그래밍
27 : 00
프로세스와 쓰레드 : 강의자료
섹션 5. 시그널, 시간
7 강의 134 : 00
기본 시그널 처리
32 : 00
기본 시그널 처리 - 라이브 프로그래밍
16 : 00
고급 시그널 처리
18 : 00
고급 시그널 처리 - 라이브 프로그래밍
22 : 00
시간과 타이머
22 : 00
시간과 타이머 - 라이브 프로그래밍
24 : 00
시그널, 시간 : 강의자료
섹션 6. 실습에서 사용한 소스코드들
1 강의
강의자료 - 소스코드

공개 일자

2019년 2월 20일 (마지막 업데이트 일자 : 2019년 5월 19일)

수강 후기

5.0
6개의 수강평
강성찬 8일 전
좋습니다!
ProgCoach4U 프로필

ProgCoach4U 8일 전
감사합니다~~~ :D

안형근 10일 전
굳!!!
ProgCoach4U 프로필

ProgCoach4U 8일 전
감사합니다~~ :D