본문 바로가기

전체 글

(46)
UNIX 의 구성 크게 세가지로 나눌 수 있다. 1. 커널 2. 쉘 3. 파일 시스템 UNIX 에서 가장 핵심적인 부분인 커널은 하드웨어와 소프트웨어의 중간에 위치한다. 커널은 항상 메모리에 상주하여 CPU, 메인 메모리, 하드디스크 등의 하드웨어 자원을 제어하면서 , 프로세스 스케줄링, 기억 장치 관리 , 파일 관리 , 시스템 호출 인터페이스 , 입출력 서비스 등의 기능을 사용자에게 제공한다. 명령어 해석기는 커널에 내장되어 있지 않으며, 응용 프로그램으로 독립되어 있다. 사용자와 UNIX 시스템간의 인터페이스 역할을 해주는 프로그램으로서 한마디로 명령어 해석기 라고 할 수 있다. 사용자가 입력한 명령어를 해석하여 그 명령이 실행 가능하도록 해 준다. 그 외에도 쉘은 작업 제어기능과 파이프 기능을 제공하여 명령어의 입력..
UNIX 운영체제 1. 대화식 ( Interactive ) 사용자와 UNIX 간의 상호작용은 명령어 해석기인 Shell(쉘) 에 의하여 이루어진다. 사용자로 부터 명령을 받기 위해 UNIX는 Shell prompt(쉘 프롬프트) 를 화면에 띄운다. 이 프롬프트에 사용자가 명령어를 입력하면 shell(명령어 해석기)를 통해 시스템에 명령을 전달하고 동작을 한다. 이러한 과정은 컴퓨터와 사용자간의 대화하는 것과 유사하다. 2.멀티태스킹 ( Multitasking ) 동시에 여러 명령을 처리하는 기능. UNIX는 개발 당시부터 멀티태스킹 환경을 염두에 두고 개발하였기 때문에 안정적이고 효율적이다. 3. 멀티 유저 ( Multi-user ) 터미널(terminal)이나 네트워크를 통해서 해당 컴퓨터에 접속하여 동시에 여러 사용자..
그래프 알고리즘. MAXV : vertex의 최대 개수 MAXDEGREE : 차수의 최대 값 typedef struct { int edges[MAXV+1][MAXDEGREE]; //연결상태 int degree[MAXV+1]; // 각 차수 int nvertices; // vertex의 개수 int nedges; // edge의 개수 } BFS ( 너비 우선 탐색 qseudo code ) BFS(G, s) // G 그래프 객체 , S 스타트 vertex for each vertex u ∈ V – {s} do color[u] ← GRAY d[u] ← ∞ π[u] ← NIL color[s] ← BLUE d[s] ← 0 π[s] ← NIL ENQUEUE(Q, s) while (Q ≠ φ) do u ← DEQUEUE(Q) for ..
LEX 와 YACC 의 동작 원리 LEX Lex 는 기본적으로 단어들로 이루어진 문장에서 지정한 Token을 하나하나 꺼내오게 된다. yylex() 라는 함수는 lex 에 의하여 구성된 lexer 의 호출 함수 이다. 다시 말해 yylex() 함수를 호출하면 lexer 는 주어진 문장에서 정해진 규칙에 의하여 토큰을 하나하나 꺼내어 온다. 이렇게 꺼내어 오면서 특정한 등록된, 즉 각 토큰에 정해놓은 함수 또는 문장( c 함수 또는 c 문장) 을 호출하게 된다. 즉 lexer 는 yylex() 에 의하여 문장에서 토콘을 꺼내오는 것을 시작하며 모든 토큰이 다 읽혀 질때까지 yylex() 를 끝내지 않는다. Lex 혼자서도 어느정도 구문 분석을 하여 수행할 수 있다. Lex 에 의하여 만들어진 lexer 자신도 얼마든지 yacc 없이 특정한..
Vi terminal 관리 programs 보호되어 있는 글입니다.
SQL parser ( by Lex & Yacc ) 보호되어 있는 글입니다.
VI 편집기 명령어 정리 1. vi 편집기 소개 £ vi(view의 약자) 편집기는 유닉스와 리눅스에서 사용하는 표준편집기로, 앞으로도 널리 사용될 것으로 전망되는 아주 유명한 에디터이다. £ vi는 입력모드, 명령모드, ex(콜론(:))모드의 3가지 모드로 작동된다. £ 어떤 파일(예 aa)을 작성할때 vi 파일명을 입력하면 vi 화면이 뜨고, 텍스트를 입력한 후 저장하고자 할때 처음 실행시키면 명령모드에서 실행되며 입력모드로 전환하여 텍스트 작업을 하게 됩니다. £ ex모드에서는 파일 입출력, vi환경변수 설정 등과 같은 작업을 할 수 있습니다. 명령모드에서 입력모드로 전환한 뒤 다시 명령모드로 들어가기 위해서는 ESC키를 누르면 됩니다. 1.1 입력모드 a : 커서의 오른쪽에서 입력을 받음 A : 라인의 마지막에서 입력을 ..
리눅스 명령어 정리 09년 1학기에 들었던 JAVA 수업에서 GUI 이전의 내용은 UNIX에서 작업을 했는데 그 때 받은 내용 1. 리눅스 기본 명령어 £ 입력된 명령어는 명령어 해석기에 의해 해석되어 수행됨 î 명령어 해석기: shell이라 하며, 주로 csh, ksh bash 등이 사용됨 £ 온라인 명령어 매뉴얼: “man 명령어"로 상세한 온라인 매뉴얼 검색 가능 £ 다음과 같이 그룹화 됨: 사용자 및 그룹관리는 root 이용자만 취급가능 î 사용자 및 그룹 관리 î 파일과 디렉토리 관리 î 프로세스 관리 î 주변장치 관리 î 텍스트 처리 î 기타 그룹 명령어 설 명 사용자 및 그룹 관리 adduser - 사용자 계정을 등록한다. 예: adduser 옵션 계정이름 useradd - 사용자 계정을 등록한다. 예: use..