최형기

English

 

시스템프로그래밍

시스템프로그래밍은 컴퓨터시스템을 이해를 위해 필수적인 과목으로 2학년 학생을 대상으로 개설합니다. x86-64 계열의 하드웨어를 기반으로 작동하는 어셈블러언어에 (assembler) 대해 집중적으로 학습을 하게됩니다. 어셈블러언어를 배움으로서 하드웨어와 소프트웨어 기본을 익히게 되고 이를 기반으로 성능을 향상시키는 프로그래밍방법에 대해 배우게 됩니다. 원할한 수업진행을 위해서 수강생들에게 C 프로그래밍에 대한 전반전인 지식을 요구합니다.

 

자료구조

자료구조는 컴퓨터시스템에서 데이타를 효율적으로 다룰 수 있는 프로그래밍 기법에 대해서 가르칩니다. 전통적으로 쓰여지는 자료구조는 시간이 지나도 거의 변하지 않습니다. 큐, 스택, 리스트, 트리, 해쉬, 소트등에 대해 가르치고 해당 구조를 이용한 응용프로그래밍 프로젝트도 병행해서 배우게 됩니다. 2학년 2학기 학생대상으로 알고리즘과목의 선수과목입니다. 원할한 수업진행을 위해서 수강생들에게 자바프로그래밍에 대한 전반적인 지식을 요구합니다.

 

데이터통신

인터넷의 근간은 점대점통신이 모이고 모여서 전세계를 연결하는 큰 네트워크를 구성하는 것 입니다. 점대점통신을 위해서 두 단말이 공통으로 따르는 통신규약이 필요하게됩니다. 현재까지 이런 통신규약들은 무척 많이 개발이 되었으며 상황에 맞게 최적의 통신규약을 선택해야 합니다. 이과목에서는 현재 널리 사용되어지고 있는 점대점통신의 통신규약에 대해서 다루어 집니다. 물리계층과 데이타링크계층에 중점적으로 학습을 합니다. 배운 지식을 실제 네트워크에 응용해 보는 프로젝트도 병행합니다.

 

컴퓨터네트워크

컴퓨터네트워크에서는 인터넷을 통한 컴퓨터통신을 가능하게 하는 네트워크계층과 전송계층의 통신규약에 대해 학습을 합니다. 인터넷에서 접속가능한 단말들의 주소체계와 통신상대방의 물리적인 장소까지 길을 찾아가는 라우팅에 대해 학습하고 혼잡제어 및 흐름제어와 같은 성능을 높이기 위한 통신규약에 대해서도 깊게 학습합니다. 배운 지식을 실제 네트워크에 응용해 보는 프로젝트도 병행합니다.

 
수업