우분투는 GUI가 포함된 리눅스 배포판 같은데

푸티는 어떤 프로그램 실행시키고 서버 들어가서 이것저것 하더라구요

어떤 원리로 작동하는 건가요?

그리고 CS:APP 정독하면서 시스템 프로그래밍좀 해보려는데 이런 건 둘 중 어느 걸로 해야하나요?