보안 · 네트워크

/

시스템

리눅스 시스템 프로그래밍

본 과정은 Linux 운영 체제의 강력한 커널 이해부터 시스템 콜 호출, 프로세스 관리 및 파일 작업에 이르기까지 Linux 운영 체제의 복잡한 과정을 안내합니다. 또한 스레딩, 프로세스 간 통신 기술을 습득할 수 있습니다.

(5.0) 수강평 6

수강생 87

Thumbnail

초급자를 위해 준비한
[시스템] 강의입니다.

이런 걸
배워요!

  • 리눅스 소개 및 컴파일,디버깅,빌드 및 소스 분석 도구에 대해 배웁니다.

  • 리눅스 파일 시스템의 특성 및 응용 구현을 배웁니다.

  • 프로세스 개념, 프로세스 처리(생성,실행,종료,소멸)에 대해 배웁니다.

  • 리눅스 쓰레드 라이브러리인 Pthread에 대해 배웁니다.

  • 프로세스간 통신 방법인 System V IPC(세마포어,메세지큐,공유메모리)를 배웁니다.

리눅스 시스템 전 분야를 다루고 있습니다.

개발 도구, File, Process,Thread, IPC 까지 리눅스에서 개발에 필요한 모든 요소를 배울 수 있습니다.

학습 내용

섹션 (1) 개발 도구

Gcc, Gdb, Vim, Make등 리눅스 개발 환경을 설정하고 사용하는 방법을 배웁니다.

섹션 (2) 파일 시스템

Super Block, Inode Block, Data Block으로 이루어진 리눅스 파일 시스템 전반을 배웁니다.

섹션 (3) 프로세스

프로세스의 메모리 구조를 다루고, 프로세스의 생성/실행/종료/소멸의 제어 과정을 배웁니다.

섹션 (4) 쓰레드

리눅스 쓰레드 라이브러리인 Pthread에 대해 내부 구조를 파악하고 여러가지 응용 프로그램 구현 법을 배웁니다.

섹션 (5) IPC

Signal과 Pipe를 통한 기본 적인 프로세스간 통신 방법과 System V IPC인 Message Queue, Semaphore, Shared Memory에 대해 배웁니다.

수강 전 참고 사항

실습 환경

  • 운영 체제 및 버전(OS): Ubuntu 16.04, 18.04

  • 편집 도구 : Ubuntu VIM, Gcc, Gdb, Make, Ctags

  • 컴파일러 : Gcc

학습 자료

  • 제공하는 학습 자료 형식 (PDF, 소스 코드)

  • 수업 시 ppt를 이용한 판서를 진행하고 이를 수업 자료로 공유합니다.

선수 지식 및 유의 사항

  • 본 과정을 듣기 위한 선수 지식 : C언어 기본, 리눅스 기본

  • 본 강의 동영상 사양 : FPS-60, 해상도-1280*720, 오디오 샘플 레이트-44,100

  • 언제든 질문해 주시고, 강의는 open source 버전 업그레이드 시 수정될 수 있습니다.

  • 강의 시 배포되는 학습 자료는 수업에만 참고 하시고 무단 배포는 금합니다.

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 리눅스상에서 프로그래밍 해야 하는 모든 분

  • 리눅스 시스템 구조를 이해하여 최적화된 프로그래밍을 하려는 분

  • 리눅스 커널 및 디바이스 드라이버 개발자

선수 지식,
필요할까요?

  • C언어, 리눅스 입문

김정인 강사님은 오픈소스가 중요하다며

리눅스 커널 및 딥러닝의 구현 소스를 취미 삼아 매일 분석 하는 오픈 소스 매니아 입니다.

소스를 통해 이해 한다며 무작정 소스 분석으로 모든 원리를 이해하려 하므로

수강 시 소스 폭탄에 주의 해야 합니다.

커리큘럼

전체

59 ∙ 17시간 44분

수업 자료

가 제공되는 강의입니다.

강의 게시일: 2024년 01월 24일
마지막 업데이트일: 2024년 01월 24일

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!