Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
Tags
- 보간탐색
- C#
- 알고리즘
- 백준
- 스택
- non-nullable
- 수치미분
- C++
- 파이썬
- 수학문서
- 자료구조
- Unity Editor
- 재귀
- 탐색
- 정렬
- 실수자료형
- Tikz
- 큐
- dfs
- programable switch
- naive sort
- APIE
- LU분해
- 시간복잡도
- [Required]
- PGF
- quick sort
- BFS
- 정수자료형
- Merge Sort
Archives
- Today
- Total
코젤브
1. 리눅스의 기본 개념과 프로그래밍 본문
운영체제 : 하드웨어 리소스를 응용프로그램이 사용할 수 있는 형태로 변환/제공 해주는 소프트웨어
운영체제의 역할
- 추상화 제공
일반적으로 사용하는 공통적인 기능 재활용 가능
하드웨어 종속성 제거
* 하드웨어 종속성: 하드웨어에 의존하는 / 하드웨어 업그레이드 시 애플리케이션에 영향 받는 경우 - 리소스 관리
애플리케이션 간의 영향 제거
리소스에 대한 효율적인 활용/ 공평한 접근
운영체제의 기능
- 프로세스 관리
- 메모리 관리
- 파일시스템 관리
- 프로세스 사이의 통신
시스템 프로그래밍
: 유닉스 환경에서 시스템 콜을 이용하는 프로그래밍
- 파일 시스템과 관련된 처리가 필요한 경우
- 프로세스와 관련된 처리가 필요한 경우
- 프로세스 사이의 통신이 필요한 경우
시스템 콜 vs 라이브러리 함수
시스템 콜
: 시스템(OS)이 제공하는 서비스를 프로그램에서 이용한 수 있도록 지원하는 프로그래밍 인터페이스
- 운영체제는 라이브러리나 헤더 파일 형태로 API를 제공
- 리턴값 = 시스템 호출명(인자, ...);
라이브러리 함수
라이브러리: 미리 컴파일된 함수를 묶어서 제공하는 특수 형태 파일
라이브러리 함수: 라이브러리에 포함된 함수
- 보통 /usr/lib에 위치
- 정적 라이브러리: 프로그램 컴파일 시 같이 적재 = 실행 파일에 포함 (실행 빠름)
- 동적 라이브러리: 실행 파일에 포함 X (실행 느림), 실행 시점에 link, 메모리를 효율적으로 사용
man 페이지
: 명령/ 함수 등 다양한 서비스에 대한 매뉴얼
- 섹션 구분 : 가장 낮은 섹션이 기본으로 출력
- 섹션 1: 리눅스에서 사용하는 일반적인 명령
- 섹션 2: 시스템 호출
- 섹션 3: 라이브러리 함수