[컴퓨터구조/운영체제] 컴퓨터 전공 수업 10분으로 압축 (컴퓨터구조 + 운영체제) 인프런/기술노트 - 컴퓨터 구조부터 클라우드 빅데이터까지 / 진로 고민, 취업 상담 # 폰노이만 구조 CPU ↔ Memory ↔ DISK 하드웨어(CPU, Memory, Disk) ↔ I/O # CPU ALU + 레지스터 ALU: 수학적 산술 연산을 하는 것이 있음 레지스터: 메모리에 있는 명령들이 올라와서 계산을 통해 연산을 하게 됨 캐시메모리: 임시저장공간 # Memory 저장공간 Memory에 컴퓨터 내 프로그램을 모두 올릴 수 없다 어떤 프로세스에 어떤 데이터를 적재시킬지가 관리 대상 → 메모리 관리 # DISK 저장소 파일에 얼마나 빠르게 접근할 것인가 → 디스크 관리 # I/O 키보드 마우스 모니터와 같은 입출..
[LinuxProgramming] Chapter 09. 프로세스 제어 리눅스 프로그래밍 원리와 실제 - 창병모 교수님 9.1 프로세스 생성 1) 프로세스 생성 fork() - 자식 프로세스(child proccess): 새로운 프로그램을 실행하기 위해서 생성하는 프로세스 - 부모 프로세스(parent proccess): 자식 프로세스를 생성한 프로세스 - fork() 시스템 호출: 리눅스에서 새로운 프로세스를 생성하는 유일한 방법 부모 프로세스를 똑같이 복제하여 새로운 자식 프로세스를 생성 자기복제: 자식 프로세스는 부모 프로세스(코드, 데이터, 스택, 힙 등)를 똑같이 복제해 만들어짐 fork() 호출 후 부모 프로세스와 자식 프로세스는 각각 독립적으로 실행함 #include #include pid_t..
Chapter 08. 프로세스 리눅스 프로그래밍 원리와 실제 - 창병모 교수님 8.1 쉘과 프로세스 1) 쉘 - 쉘(Shell) 사용자와 운영체제 사이에 창구 역할을 하는 소프트웨어 사용자로부터 명령어를 입력받아 이를 처리하는 명령어 처리기(Command Processor) 역할 수행 * 프로세스: 실행 중인 프로그램 - 쉘의 실행 절차 쉘은 시작하면 실행 파일을 읽어 실행 시작 파일은 환경 변수와 같은 사용자의 사용 환경을 초기화하는데 주로 사용 bash의 경우 시스템 차원의 시작 파일로 /etc/profile과 /etc/bashrc를 사용하고 사용자 차원의 시작 파일로 ~/.bash_profile과 ~/.bashrc를 사용함 쉘은 시작 파일을 실행한 후에 프롬프트를 출력하고 사용자의 명령을 기다림 사..
Chapter 03. 프로세스와 스레드 누워서 보는 운영체제 이야기 - 김주균 교수님 # 3.1 프로세스란 무엇인가? ▶ Job: 시스템에서 처리해줘야 할 일거리 하나의 단위 = process(Task, Thread) ≠ processor(H/W): 일을 처리할 수 있는 기능을 가짐 ex) CPU ▶ 프로세서의 정의 수행 중인 프로그램 (A program in execution) 수행 중(in execution): 어떤 일을 함을 나타내는 프로그램과 이때 필요한 값들을 저장하고 있는 처리기 레지스터, 스택 등의 데이터와 함께, 어느 정도 진행되었는지를 나타내는 PC 값 등으로 표현되어, 커널에 등록되어 있다는 것을 의미 ▶ 프로그램과 데이터를 기본으로 정상적인 실행을 위해 필요한 환경을 시스템으로부터 부..