CS23 [OS] 3. 프로세스(1) 1. Process란? - 프로세스는 실행된 프로그램의 인스턴스로써 각각은 PID로 구분한다 # Address space 1) Code : 프로그램의 Code가 저장되고 PC register가 가리킴으로써 순차적으로 코드가 실행됨 2) Data : 전역변수가 저장 3) Stack : Temporary data(params, local vars, return address 등)이 저장, SP register가 가리킴 4) Heap : Dynamic하게 할당되는 공간, 예를 들어 malloc으로 할당되는 공간 2. Process State Transition * scheduler : ready state인 프로세스를 고르는 Module * process hierarchy - 프로세스는 또 다른 프로세스를 생.. 2020. 10. 30. [OS] 2. 시스템 구조 1. OS service 사용자 인터페이스(UI) : CLI, Batch Interface, GUI ↑↓ System call ↑↓ 프로그램 실행 입출력 연산 파일 시스템 조작 통신 오류 탐지 자원 할당 회계 보호/보안 읽기/쓰기 /생성/삭제 /수정/권한 프로세스 간 정보 교환 시스템 자원에 대한 접근 통제 /외부로부터의 접근 관리 2. System Call - System call은 Privileged instruction 즉, Kernel mode에서만 사용가능한 Instruction을 호출한다 - 이를 호출하기 위해 User는 OS가 지원하는 User Interface를 통해 요청한다 - System call이 호출되면 User mode에서 Kernel mode로 전환되어 System call에 맞.. 2020. 10. 28. [OS] 1. 개요 0. Operating System Concept을 보고 아주대 김상훈 교수님의 강의를 들으며 공부한 내용입니다. 1. 컴퓨터 시스템 1) HW : CPU + memory + I/O device 2) OS 3) Application Program 4) User : User는 Application Program을 통해 연산을 요청하고 OS는 이 연산을 하기 위해 HW의 자원을 어떻게 사용할지 결정(제어) 2. 컴퓨터 시스템 구조 현대의 모든 컴퓨터는 Von Neuman(폰 노이만) 구조를 갖는다. # Von Neuman 구조 : Stored-program computer model # BUS 구조 - CPU와 Device Controller(DC)는 공유되는 Memory와 함께 하나의 버스 구조로 연결되어.. 2020. 10. 28. [JAVA] 변수 : 타입 1. 변수 1) 정의 : 단 하나의 값(Data)을 저장할 수 있는 메모리 공간. 2) 예약어 : keyword 또는 reserved word라고 함. ex) true, if 등.. 3) 분류 Data > Type > Data Type > 기본형(primitive type) 또는 참조형(reference type) * JAVA는 참조형 변수 간의 연산을 할 수 없다. why? 2. 타입 1) 참조형 변수(reference type variable) (Class name) (variable name) : 객체의 주소를 할당 받는다 Class, 배열, Interface 등 ex) Date today = new Date(); 2) 기본형 변수(primitive type variable) : 8가지 논리형 : .. 2020. 10. 11. [JAVA] 개요 1. JAVA 개요 1) 특징 OS에 독립적 JAVA 프로그램은 JVM과 통신하고 JVM이 JAVA 프로그램의 명령을 OS가 이해할 수 있도록 변환 후 전달 JVM은 OS에 종속적이어서 OS에 따라 구별되는 버전이 존재 2) 객체지향 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어라고 평가됨 3) 자동 메모리 관리(Garbage collection) Garbage collector가 자동적으로 메모리를 관리, 프로그래머는 따로 관리하지 않아도 괜찮다 4) 네트워크, 분산처리를 지원 다양한 API 지원 5) 멀티쓰레드 지원 특히 시스템과 관계없이 구현 가능, API지원 여러 쓰레드에 대한 스케줄링은 JAVA Interpreter가 담당 6) 동적 로딩(Dynamic Loading) 지원 '실행 시'.. 2020. 10. 11. 이전 1 2 3 다음