1. 부트 매니저 [1] 부트 매니저의 개요 1) 부트매너저의 정의 부트 매니저는 보조기억장치에 위치한 운영체제를 주기억장치로 로드하기 위한 프로그램 부트로더라고도 함 2)부트 매니저의 동작원리 시스템 켜질때 BIOS가 디스크의 첫번째섹터(0번섹터)인 부트섹터에서 512바이트의 MBR(Master Boot Record)을 읽는다. MBR은 크기가 제한되기 때문에 IPL(Initial Program Loader)이라 불리는 부트로더의 일부가 먼저 실행된다. IPL은 파티션 테이블을 검사하여 부트로더의 나머지 코드의 위치를 알아내 실행 리눅스 대표 부트 매니저 프로그램은 LILO(Linux Loader), GRUB(Grand Unified BootLoader),GRUB2가있다 [2] 부트 매니저의 종류 1)..
1. 하드웨어의 이해 [1] 컴퓨터의 구성요소 1) 중앙처리장치(CPU : Central Processing Unit) 명령어 해석, 연산, 결과반환 -> 컴퓨터 시스템 통제하는 컴퓨터 제어장치 레지스터와 연산장치(ALU : arithmetic_Logic Unit) 그리고 제어장치(Control Unit)으로 구성 레지스터 : CPU 연산처리를 위한 임시저장소 역할, 작은 데이터만 저장, 액세스 속도 빠름 연산장치 : 데이터들 간의 비교, 판단, 연산 수행 제어장치 : 입력된 명령어해석, 해석한 명령을 연산장치로 전송, 주소를 디코드하여 레지스터에 데이터를 저장 2) 주기억장치(Main memory) CPU가 처리할 명령어와 데이터를 저장하기 위한 장치 휘발성 메모리인 RAM(Random Access M..
1. 리눅스 개요 [1] 리눅스의 정의 및 의미 1) 리눅스의 정의 1991년 리누스 토발즈에의해 오픈소스로 개발, 개인용 컴퓨터, 서버, 메인프레임, 모방리긱, 임베디드 기기를 위한 유닉스 호환 운영체제 2) 리눅스의 의미 처음에는 지금과 같은 다양한 패키지를 포함X 단순 리눅스 커널만을 의미 나중에 FSF(Free Software Foundation)가 GNU프로젝트를 통해 리눅스 커널 기반으로 다양한 라이브러리와 애플리케이션이 포함된 리눅스 배포판을 제공 [2] 리눅스의 일반적 특징 1) 이식성 대부분 코드가 c언어로 작성 -> 다양한 하드웨어에 쉽게 이식 가능 2) 자유 소프트웨어(Free Software) 전세계 개발자들의 기여를 통해 진화 리눅스 소스코드는 자유롭게 사용,수정,배포가능 단, 수..
1.운영체제의 정의 및 목적, 역할 [1] 운영체제의 정의 1) 사용자와 하드웨어 간 상호작용을 위해 사용자 인터페이스를 제공하는 시스템 소프트웨어 2) CPU,메모리 등 하드웨어를 효율적으로 관리 3) 응용 프로그램이 동작할 수 있는 환경, 즉 프로그래밍 인터페이스를 제공 [2] 운영체제의 목적 1) 처리능력 향상 : 일정 시간 동안 처리하는 일의양 2) 반환시간 최소화 : 작업 의뢰 후 시스템에서 결과가 얻어질 때까지의 시간 3) 사용 가능도 향상 : 이용할 수 있는 시스템의 자원이 어느 정도인가 4) 신뢰도 향상 : 주어진 문제를 정확하게 처리하는 정도 [3] 운영체제의 역할 1) 하드웨어 제어, 입력, 출력 등의 관리 2) 한정된 하드웨어 자원을 다수의 이용자가 공유할 수 있게함 3) 한정된 자원..
1. 빌더 패턴이란? 생성과 관련된 디자인 패턴으로, 동일한 프로세스를 거쳐 다양한 구성의 인스턴스를 만드는 방법 1-1. 정의(Definition) GoF 디자인 패턴 중 생성 패턴에 해당한다. 빌더 패턴은 복잡한 객체를 생성하는 클래스와 표현하는 클래스를 분리하여, 동일한 절차에서도 서로 다른 표현을 생성하는 방법을 제공한다. 생성해야하는 객체가 Optional한 속성을 많이 가질 때 더 좋다. 2. 해결하고자 하는 문제 빌더 패턴은 생성과 관련된 어떤 문제를 해결하려고 했을까? 결론부터 이야기하면, 객체를 생성할 때 생성자(Constructor)만 사용할 때 발생할 수 있는 문제를 개선하기 위해 고안됐다. 이전에 알아본 생성 패턴과 비교하자면, 팩토리 메소드 패턴이나 추상 팩토리 패턴에서는 생성해야..