본문 바로가기

전체 글

(11)
객체지향 프로그래밍 1. 객체 지향 언어객체지향이론의 기본 개념은 ‘실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물간의 상호작용이다.’1.2 객체지향 언어기존 언어의 발전된 형태임. 코드간의 서로 관계를 맺어 줌으로써 보다 유기적으로 프로그램을 구성.객체지향언어의 주요 특징코드의 재사용성이 높고 유지보수 용이코드의 관리가 용이함신뢰성이 높은 프로그래밍 가능(제어자와 메서드 이용)중복된 코드제거 2. 클래스와 객체2.1 클래스와 객체의 정의와 용도클래스란?객체를 정의해놓은 것(정의), 객체의 설계도 또는 틀(클래스:붕어빵틀, 인스턴스 : 붕어빵)객체를 생성하는데 사용(용도)객체 그 자체는 아니다.객체?실제로 존재하는 것, 개념이나 논리, 클래스에 정의된 내용대로 메모리에 생성된 것2.2 객체와 인스턴..
[운영체제] 커널모드와 사용자 모드 CPU Protection Ring CPU Protection Rings(보호 링)은 운영체제가 시스템의 보안을 관리하고 각 프로세스의 권한을 분리하는 데 사용되는 메커니즘이다. 위 사진을 보면 0부터 3까지 링이 있는데 이 링은 권한수준을 나타내며, 낮은 번호일수록 권한이 높아진다. CPU가 실행될떄 마다 Protection Ring에 적혀있는 레벨정보에 따라 실행여부가 결정된다. Ring 0 (커널 모드) - 커널이 동작하는 모드이다. - 운영체제의 핵심 서비스를 실행하고, 시스템 레벨 작업을 수행하는 모드이다. - 모든 하드웨어 자원과 권한에 대한 접근이 허용된다. Ring 1, 2 (예비 권한) - 일반적으로 사용되지 않는다. - 몇몇 운영체제는 이러한 중간 권한을 사용하여 특정 작업을 분리하거나..
[운영체제] OS (커널, 쉘, 시스템 콜) OS (Operating System) 운영체제 (Operating System) 운영체제란? 컴퓨터 자원을 효울적으로 관리하고 프로그램에 대한 일반적 서비스를 지원하는 시스템 소프트웨어이다. 주요 운영체제로는 윈도우, LINUX, MAC등이 있다. OS는 커널을 의미하는데 일반적으로 커널에 여러가지 추가된 상태를 OS라고 통칭하여 부르고 있고 운영체제의 코어를 커널이라고 생각할 수 있다. 운영체제는 사용자가 사용하는 응용프로그램이 효율적으로, 적절하게 동작하도록 지원하는 것이 목표이다. 1. 운영체제의 역할 시스템 자원 관리자 역할 프로세스 관리는 다중 작업을 지원하며, CPU 스케줄링과 프로세스 간 통신을 담당한다. 메모리 관리는 물리적인 메모리를 효율적으로 할당하고 관리한다. 파일 시스템 관리는 파..