Fascination
article thumbnail
[LinuxProgramming] Chapter 05. 파일 입출력
Study/Linux 2022. 4. 25. 15:14

Chapter 05. 파일 입출력 리눅스 프로그래밍 원리와 실제 - 창병모 교수님 5.1 시스템 호출 1) 컴퓨터 시스템 구조 - 하드웨어는 CPU, 메모리, 저장장치, 주변장치 등으로 구성 - 운영체제는 하드웨어를 운영 관리하는 시스템 소프트웨어이며 유닉스/리눅스의 경우 커널(kernel)이 하드웨어를 운영 관리 - 운영체제 서비스 프로세스 관리 파일 관리 메모리 관리 통신 관리 주변 장치 관리 2) 시스템 호출 - 시스템 호출(system call): 운영 체제가 제공하는 서비스에 대한 프로그래밍 인터페이스 - 시스템 호출은 커널에 서비스를 요청하기 위한 프로그래밍 인터페이스로 응용 프로그램은 시스템 호출을 통해서 커널에 서비스를 요청 가능 3) 시스템 호출 구현 주요 자원 시스템 호출 파일 open..

article thumbnail
[OS] Chapter 01. OS? Oh Yes!

Chapter 01. OS? Oh Yes! 누워서 보는 운영체제 이야기 - 김주균 교수님 # 1.1 OS? - 운영체제의 정의 컴퓨터의 여러 응용 프로그램을 설치되게 해 주고, 여러 가지 장치를 효율적으로 작동하도록 하며, 사용자가 컴퓨터를 손쉽게 이용할 수 있도록 해 주는 프로그램의 집단 컴퓨터의 사용자와 하드웨어 사이에서 가교(interfacing) 역할을 하는 프로그램 하드웨어 그 자체가 가지고 있는 능력을 십분 발휘되도록 제어해 주는 프로그램 컴퓨터가 컴퓨터 밖의 세계와 상호 동작하는 방법을 정의한 프로그램 - 운영체제의 역할 운영체제 역할: 사용자 인터페이스(User Interface)와 자원 관리(Resource Management)를 위한 프로그램 집합 시스템 프로그램: 컴퓨터 하드웨어에 의..

[DS] Recursion(재귀 호출) 과 함수 호출 과정
Study/Data Structure 2021. 8. 26. 00:00

# 재귀 호출의 개념 - 재귀 호출: 함수가 실행 중에 자기 자신을 다시 호출하는 상황 - 종료 조건을 가지는 동일한 task가 반복될 때 가능 // 종료 조건: 함수가 끝나야하기 때문에 필요 > 종결 조건은 재귀 호출에 반드시 포함되어야하며 잘못 설정할 경우 프로그램이 무한 반복에 빠질 수 있음 - 시스템 입장에서는 새로운 함수가 불리는 것과 같음 - 함수 실행 중 또 다른 함수가 실행되면 함수의 컨텍스트(context), 정보(지역변수, 복귀주소)를 활성 레코드(activation record)에 저장하여 보관하여야 함 - 활성 레코드는 함수의 환경 정보를 담고 있는 구조체이며 실행되는 함수마다 1개씩 생성되어 시스템 스택에서 저장 관리됨 - 시스템 스택은 함수 호출을 관리하기 위해 프로그램에서 사용..