UNIX의 개요
UNIX의 특징
- 시분할(Time-sharing) 시스템을 위해 설계된 대화식 운영체제
- 소스가 공개된 개방형 시스템(Open System)
- 트리 구조의 파일 시스템을 가짐
- 멀티 유저(Multi-User), 멀티태스킹(Multi-tasking)을 지원함
- 하나 이상의 작업에 대하여 백그라운드에서 수행 가능함
- 90% 이상이 고급 언어인 C로 구성되어 있어서 이식성이 높음
UNIX 시스템의 구성
커널(Kernel) | - UNIX 시스템의 가장 핵심적인 부분 - 프로세스 관리, 메모리 관리, 파일 관리, 입출력 관리 등의 기능을 수행함 |
쉘(Shell) | - 사용자가 지정한 명령들을 해석하여 커널로 전달하는 명령어 해석기 - 시스템과 사용자 간의 인터페이스를 담당함 - 종류 : C Shell, Bourn Shell, Korn Shell 등 |
유틸리티(Utility) | - 사용자의 편의를 위한 프로그램 - 종류 : 편집기, 컴파일러, 인터프리터 등 |
UNIX 파일 시스템의 구조
부트 블록 (Boot Block) |
부팅에 필요한 코드를 저장하고 있는 블록 |
슈퍼 블록 (Super Block) |
전체 파일 시스템에 대한 정보를 저장하고 있는 블록 |
I-node 블록 (Index Node Block) |
- 각 파일에 대한 정보를 저장하고 있는 블록 - 파일 소유자의 식별번호, 파일 크기, 파일의 최종 수정 시간, 파일 링크 수 등의 내용을 가지고 있음 |
데이터 블록 (Data Block) |
실제 데이터를 저장하고 있는 블록 |
UNIX 명령어
시스템 관련 명령어
- login : UNIX 시스템에 접속함
- logout : UNIX 시스템 접속을 종료함
- finger : 시스템에 등록된 사용자의 정보를 표시함
- who : 현재 로그인 중인 각 사용자에 고나한 정보를 표시함
- ping : 네트워크상의 문제를 진단함
- fsck : 파일 시스템의 무결성을 검사함
- mount : 기존 파일 시스템에 새로운 파일 시스템을 서브 디렉터리에 연결함
- unmae : 현시 시스템 정보를 확인하는 명령어 (옵션 -a : 시스템 모든 정보 출력)
프로세스 관련 명령어
- fork : 새로운 프로세스를 생성함
- exec : 새로운 프로세스를 수행함
- exit : 프로세스 수행을 종료함
- wait : 자식 프로세스 중 하나가 종료될 때까지 부모 프로세스를 임시로 중지시킴
- kill : 현재 실행 중인 프로세스를 종료하거나 한 줄 전체를 지움
- ps : 현재 실행 중인 프로세스의 상태를 표시함
- getpid : 자신의 프로세스 아이디를 구함
- getppid : 부모 프로세스 아이디를 구함
디렉터리 관련 명령어
- pwd : 현재 작업 중인 디렉터리의 경로를 표시함
- ls : 현재 디렉터리 내의 모든 파일을 표시함
- mkdir : 디렉터리를 생성함
- rd :파일 디렉터리를 삭제함
- cd : 디렉터리의 위치를 변경함
파일 관련 명령어
- create : 파일을 생성함
- open : 파일을 사용 가능한 상태로 준비시킴
- cp : 파일을 복사함
- rm : 파일을 삭제함
- mv : 파일의 이름을 바꿈
- cat : 파일의 내용을 화면에 표시함(cat /etc/ *release* : 리눅스 릴리즈 정보 확인
- chmod : 파일의 사용 권한을 지정함
- chown : 파일의 소유자를 변경함
UNIX 환경 변수
환경 변수(Environment Variables)의 개념
- 쉘(Shell) : 프로그램들 사이에서 값을 전달해 주는 역할을 하는 변수
- 프로세스가 컴퓨터에 동작하는 방식에 영향을 미치는 값들의 집합
- 기본적으로 환경 변수는 대문자를 사용함
환경 변수 관련 명령어
- env : 전역 환경 변수를 설정하거나 출력함
- set : 사용자 환경 변수를 설정함
- printenv : 현재 설정되어 있는 환경 변수의 값을 모두 출력함
- echo : 특정 환경 변수의 값을 출력함
- setenv : 환경 변수의 값을 설정함
BASH Shell
- LINUX, MAC OSX 등 다양한 운영체제에서 사용되며 LINUX 표준 쉘임
- LINUX에서 환경 변수를 설정하는 명령어에는 env, set, export 등이 있음
- env : 전역 변수 설정, 조회, 삭제
- set : 사용자 환경 변수 설정 및 조회
- export : 사용자 환경 변수 전역 변수로 설정
- declare : 변수 타입을 설
728x90
'정보처리기사 > 프로그래밍 언어 활용' 카테고리의 다른 글
TCP/IP 프로토콜 (0) | 2023.08.05 |
---|---|
OSI 7계층과 오류 제어 방식 (0) | 2023.08.05 |
분산 운영체제 (0) | 2023.08.05 |
정보 관리 (1) | 2023.08.05 |
디스크 스케줄링 (0) | 2023.08.05 |