본문 바로가기

It

(8)
Digital Content 시장의 2010 트랜드 1. Consumption Oriented IT Service 소비자가 원하는 Content 를 이용한 만큼 지불하는 소비량 중심의 IT 서비스 Cloud Computing : 정보가 인터넷 상의 서버에 영구적으로 저장되고, Desktop 이나 노트북, 휴대용 기기 같은 클라이언트에서 정보가 일시적으로 보관되는 인프라의 새로운 패러다임 SaaS : 하나 이상의 공급업체가 원격지에서 보유, 제공, 관리하는 소프트웨어를 의미한다. 공급업체는 하나의 플랫폼을 이용해 다수의 고객에게 소프트웨어 서비스를 제공한다. 사용자는 이용한 만큼 돈을 지불하거나, 월, 년 단위로 이용료를 지불하는 형태를 취한다. 2. Synchronization for Seamless Multi Uses 동일한 Contend가 웹, 모바일..
운영체제의 구조 ( 스케줄링 ) 스케줄링이란 CPU 사용권을 요청하는 프로세스들이 여럿 있을 때 이들 경쟁 관계에 있는 프로세스들 중에서 어떤 프로세스에게 CPU를 할당할 것인가를 결정하는 정책이다. 프로세스 스케줄링에 있어 기준은 공평성과 효율성이다. 특정 프로세스에 대해 자원 할당이 불공평 하게 지연되어서는 안되며 , 스케줄링 과정 자체도 효율적이어야 한다. 스케줄링의 목표는 프로세스의 반응 기간과 단위 시간당 처리량을 늘이는 것이다. 선점형 멀티태스킹에서는 운영체제가 시스템 자원 특히 CPU를 완전히 선점한 상태에서 각 프로세스에게 CPU를 할당한다. 이 경우 보통 10ms 정도의 시간 단위로 CPU를 프로세스별로 돌아가면서 할당 비 선점형 멀티태스킹에서는 운영체제가 아니라 프로그램의 프로세슫르이 CPU를 제각ㄱ ㅣ알아서 사용하고..
운영체제의 구조 ( 프로세스 ) 프로세스의 의미는 메모리에 로드되어 실행 중인 프로그램을 말한다. 프로그램이 실행 가능 하려면 CPU가 인식할 수 있는 기계어로 구성되어 디스크에 저장되어야 한다. 이 상황에서 프로그램에 대해 실행 요청이 오면 바이너리 코드는 비로소 메인 메모리에 적재되고 실행 가능한 상태가 되는데, 이와 같은 상태의 프로그램을 가르켜 프로세스 라고 한다. 이런 프로세스는 Task 라고 불리기도 한다. UNIX 시스템에서 임의의 프로그램이 실행되려면 하나의 프로세스(부모) 가 또 다른 프로세스(자식)를 추가로 생성한 다음, 자식 프로세스를 해당 실행 파일과 연관 지음으로써 원하는 프로그램이 실행된다. 즉 , 임의의 프로그램을 실행하라는 명령을 입력받은 프로세스는 자신과 동일한 일을 할 자식 프로세스를 생성하고 이렇게 생..
운영체제의 구조 ( 파일 시스템 ) 파일 시스템이란? 물리적인 디스크 영역에 있는 파일 또는 디렉토리의 집합을 말한다. UNIX 시스템에서는 데이터를 파일 형태로 관리하고, 이런 파일들이 모여 디렉토리 계층 구조가 된다. 파일의 종류에는 일반 데이터 파일, 실행 프로그램인 바이너리 파일, 디바이스 파일 그리고 파일의 집합체로 계층 구조의 정보를 갖는 디렉토리 파일 등이 있다. 물리적인 입출력 장치( 하드디스크 , 프린터 ) 등을 참조하는 파일이다. UNIX 시스템은 디바이스 파일을 이용해서 해당 하드웨어에 접근한다. 즉, 입 출력 장치를 하나의 파일로 인식하여 제어한다. 디바이스 파일들은 /dev 디렉토리 안에 있다. 블록 디바이스 : 입 출력시 커널 내의 특정 버퍼를 이용 ( 하드 디스크 , CD - ROM 등 ) 문자 디바이스 : 버퍼..
UNIX 의 구성 크게 세가지로 나눌 수 있다. 1. 커널 2. 쉘 3. 파일 시스템 UNIX 에서 가장 핵심적인 부분인 커널은 하드웨어와 소프트웨어의 중간에 위치한다. 커널은 항상 메모리에 상주하여 CPU, 메인 메모리, 하드디스크 등의 하드웨어 자원을 제어하면서 , 프로세스 스케줄링, 기억 장치 관리 , 파일 관리 , 시스템 호출 인터페이스 , 입출력 서비스 등의 기능을 사용자에게 제공한다. 명령어 해석기는 커널에 내장되어 있지 않으며, 응용 프로그램으로 독립되어 있다. 사용자와 UNIX 시스템간의 인터페이스 역할을 해주는 프로그램으로서 한마디로 명령어 해석기 라고 할 수 있다. 사용자가 입력한 명령어를 해석하여 그 명령이 실행 가능하도록 해 준다. 그 외에도 쉘은 작업 제어기능과 파이프 기능을 제공하여 명령어의 입력..
VI 편집기 명령어 정리 1. vi 편집기 소개 £ vi(view의 약자) 편집기는 유닉스와 리눅스에서 사용하는 표준편집기로, 앞으로도 널리 사용될 것으로 전망되는 아주 유명한 에디터이다. £ vi는 입력모드, 명령모드, ex(콜론(:))모드의 3가지 모드로 작동된다. £ 어떤 파일(예 aa)을 작성할때 vi 파일명을 입력하면 vi 화면이 뜨고, 텍스트를 입력한 후 저장하고자 할때 처음 실행시키면 명령모드에서 실행되며 입력모드로 전환하여 텍스트 작업을 하게 됩니다. £ ex모드에서는 파일 입출력, vi환경변수 설정 등과 같은 작업을 할 수 있습니다. 명령모드에서 입력모드로 전환한 뒤 다시 명령모드로 들어가기 위해서는 ESC키를 누르면 됩니다. 1.1 입력모드 a : 커서의 오른쪽에서 입력을 받음 A : 라인의 마지막에서 입력을 ..
FILE 처리 함수 요약 : int fgetc(FILE * fp); 파일에서 문자를 1 바이트씩 읽어 와서 int 형으로 리턴 시킨다. 오류가 발생하거나 파일에 끝에 도달했을 때 EOF 를 리턴 : int fputc(int ch, FILE *fp); 메모리 상에서 character를( 1 byte ) 를 파일에 입력한다. ch : 파일에 기록할 문자 상수 , fp : 대상이 되는 파일 포인터. fp가 가리키는 파일에 ch를 저장. 정상적으로 작동하면 기록한 문자를 int 형으로 리턴하고 그렇지 않으면 EOF를 리턴. : char *fgets(char *str, int n, FILE* fp); 파일에서 문자열을 n 길이만큼 읽어와 str이 pointing 하는 character에 삽입한다. 파일이 끝이거나 ‘\n..
LEX 의 구조 lex 프로그램은 크게 세 부분으로 구분된다. 정의절 규칙절 사용자 서브루틴절 실제 코드에서의 형태는 다음과 같다 {% 정의절 %} %% 규칙절 %% 사용자 서브루틴 각 부분은 %% 즉 % 두개를 담고 있는 행으로 구분한다. 처음 두 부분은 내용이 없더라도 반드시 있어야 한다. 즉 정의절 과 규칙절 은 반드시 있어야 한다. 세번째 부분과 그앞에 있는 %% 행은 생략할 수 있다. 정의절 정의절은 리터럴 블록, 정의, 내부 테이블 선언, 시작조건, 변환 등을 포함할 수 있다. 공백으로 시작하는 행은 C 파일에 복사될 때 공백이 제거된다. 이는 주로 /* */ 로 둘러싸인 주석을 포함할 때 앞의 공백을 제거하기 위한 기능이다. 규칙절 규칙절은 패턴으로 이루어진 행과 C 코드를 담고 있다. 공백 또는 %{ 와 ..