Linux 50

02-04-02 셸 프로그래밍

셸 프로그래밍 셸 프로그래밍의 개요 셸 프로그래밍의 개념 특정 목적을 달성하기 위한 셸 스크립트를 작성하는 활동을 셀 스크립팅이라 한다. 셸 스크립트: 셸에서 제공하는 여러 명령어를 나열한 일종의 파일 주기적인 백업, 시스템 모니터링 등 반복 작업을 자동화 문법이 간단하여 쉽게 작성 셸 스크립트의 형식 첫 번째 줄에는 해당 스크립트가 사용할 셸을 '#!'를 통해 명시 두 번째 줄부터는 일련의 명령어 기술 셸 스크립트 실행 별도 프로세스로 실행하는 방법과 현재 셸에서 바로 실행하는 방법이 있다. 별도의 프로세스로 실행하기 위해서는 스크립트 파일의 퍼미션에 실행 권한을 주고 실행한다. 실행할 때 셸의 인자로 스크립트 파일 경로를 넘겨서 직접 실행할 수도 있다. 현재의 셸에서 바로 실행하기 위해서는 sourc..

02-04-01 셸(Shell)

02-04 셸(Shell) 셸의 이해 셸의 개념 셀의 일반적 정의 Shell은 사용자가 커널의 서비스 기능을 사용할 수 있도록 하기 위한 통로 또는 사용자 인터페이스 Shell은 명령줄 인터페이스 방식(CLI: Command-Line Interface)과 그래픽 유저 인터페이스(GUI: Graphical User Interface)으로 구분된다. 리눅스에서는 주로 CLI방식을 사용한다. 리눅스 셸의 역사 1971년, 최초 버전의 유닉스에 도입된 최초 유닉스 셸은 캔 톰프슨(Kenneth Lane Thompson)이 작성한 톰프슨 셸(Thompson shell)이다. 1977년, 유닉스 버전 7에 포함된 기본 유닉스 셸은 본셸(Bourne shell, sh)이며 AT&T 벨 연구소의 스티븐 본(Stephe..

02-03 X 윈도우

X 윈도우 X 윈도우의 개념 X 윈도우의 정의 'X 윈도우'란 플랫폼 독립적으로 작동하는 GUI 환경을 구현하기 위해 서버 클라이언트 구조를 기반으로 X 프로토콜을 통해 디스플레이 장치에 윈도우를 그려준다. 디스플레이의 윈도우에 마우스 및 키보드 등 입력장치를 통한 사용자와의 상호작용을 가능하게 하는 플랫폼으로 유닉스 및 리눅스의 윈도우 시스템이다. X 윈도우의 역사 1984년, IBM과 MIT, DEC 공동 '아데나 프로젝트'를 통해 밥 쉐이플러(Bob Scheifler)와 짐 게티스(Jim Gettys)가 처음 개발하였다. 1986년 밥 쉐이플러가 누구나 자유롭게 X를 사용하고 배포할 수 있도록 오픈소스화하기 위한 디자인을 수행하였다. 1987년 오픈소스 프로젝트하에 'X11'을 발표했다. 1988년..

02-02-03 파일 시스템의 이해

파일 시스템의 이해 파일 시스템의 개요 파일 시스템이란 디스크에 사용자의 데이터를 효율적으로 저장하기 위한 파일과 디렉터리를 조직화한 체계 디스크에 포맷 작업을 한다는 의미는 빈 종이에 글씨 쓰기 좋게 줄을 긋는 것과 비슷하다. 포맷은 디스크를 일정한 크기로 분할하고 주소를 설정하여 사용자의 자료를 조직적으로 보관할 수 있게 한다. 사용자의 데이터는 파일 단위로 관리가 되며 디스크에 저장할 때에는 레코드 단위 혹은 블록 단위로 저장된다. 각 파일은 디렉터리에 속하여 그룹을 생성할 수 있어 많은 파일을 체계적으로 관리할 수 있다. 파일 시스템은 파일 입출력 시 발생하는 오류에 대하여 복구할 수 있는 기능도 제공한다. 디스크 입출력은 메모리에 비해 속도가 느리기 때문에 파일 시스템은 캐시 기능을 제공하여 디..

02-02-02 Systemd

systemd 소개 systemd의 개요 정의 systemd는 이전 버전의 리눅스에서 사용하였던 SysV init 시스템을 대체하기 위한 시스템 및 서비스를 위한 매니저 역할을 수행한다. 레드햇사의 Lennart Poettering과 Kay Sievers가 처음 개발하였고, LGPL 라이선스이다. 특징 기존의 SysV init 스크립트와 호환성을 유지하도록 설계되었다. 부팅 시 시스템의 서비스들의 병렬로 시작할 수 있는 기능을 제공 데몬이 필요한 순간 실행하여 시스템 리소스를 절약할 있는 온디맨드 액티베이션(ondemand activation) 기능을 제공한다. 구체적으로 D-Bus, 소켓, 장치, 경로 기반 온디맨드 액티베이션 기능을 제공한다. 서비스 간 의존성을 고려하여 서비스의 시작 순서를 제어할 ..

02-02-01 리눅스의 구조

리눅스의 구조 부트 매니저 부트 매니저의 개요 부트 매니저의 정의: 보조기억장치에 위치한 운영체제를 주기억장치로 로드하기 위한 프로그램으로 '부트로더'라고 함 부트 매니저의 동작 원리 시스템이 켜지면 BIOS는 디스크의 첫 번째 섹터(0번 섹터)인 부트 섹터에서 512바이트의 MBR(Master Boot Recoder)을 읽는다. MBR은 크기가 제한되기 때문에 IPL(Initial Program Loader)이라 불리는 부트로더의 일부가 먼저 실행된다. IPL은 파티션 테이블을 검사하여 부트로더의 나머지 코드의 위치를 알아내 실행한다. 리눅스 부트 매니저 프로그램은 LILO(Linux Loader), GRUB(Grand Unified BootLoader), GRUB2가 있다. 부트 매니저의 종류 LIL..

02-01 리눅스와 하드웨어

리눅스와 하드웨어 하드웨어의 이해 컴퓨터의 구성 요소 중앙처리장치(CPU: Central Processing Unit) 외부에서 정보를 입력받아 컴퓨터 프로그램의 명령어들을 해석하고 연산하여 결과를 반환하는 컴퓨터 제어 장치 Register와 연산장치(ALU: Arithmetic-Logic Unit) 그리고 제어장치(Control Unit)로 구성 주기억장치(Main Memory) CPU가 처리할 명령어와 데이터를 저장하기 위한 컴퓨터 하드웨어 메모리는 휘발성 메모리인 RAM(Random Access Memory)과 비휘발성 메모리인 ROM(Read Only Memory)으로 분류 RAM은 DRAM(Dynamic RAM)과 SRAM(Static RAM)으로 나눔 ROM은 저장 데이터를 변경할 수 없는 M..

01-02 리눅스의 기초

리눅스의 기초 리눅스의 개요 리눅스의 정의 및 의미 1991년 리누스 토발즈(Linux Torvalds)에 의해 오픈소스로 개발 리눅스의 정의: 개인용 컴퓨터, 서버, 모바일 기기, 임베디드 기기를 위한 유닉스 호환 운영체제 리눅스의 의미: 개발 초기에는 리눅스 커널만을 의미했다. 현재는 GNU 프로젝트를 통해 리눅스 커널 기반으로 다양한 라이브러리와 어플리케이션이 포함된 리눅스 배포판을 제공하고 있다. 리눅스의 일반적 특징 이식성 자유 소프트웨어 멀티 유저 멀티프로그래밍 계층적 파일시스템 다양한 기능을 제공하는 셸 우수한 보안 리눅스의 기술적 특징 모놀리딕 커널 장치의 파일화 다양한 파일 시스템의 지원 가상 메모리 스왑 동적 라이브러리와 정적 라이브러리 파이프 리다이렉션 가상 콘솔 리눅스의 장단점 리눅..

01-01 운영체제의 개요

운영체제의 개요 운영체제의 정의 및 목적, 역할 운영체제의 정의 사용자와 하드웨어 간의 상호작용을 위해 사용자 인터페이스를 제공하는 시스템 소프트웨어 컴퓨터의 중앙처리장치, 메모리, 주변 장치 등 하드웨어를 효율적으로 관리 응용 프로그램이 동작할 수 있는 환경, 즉 프로그래밍 인터페이스 제공 운영체제의 목적 처리능력 향상 반환시간의 최소화 신뢰도 향상 사용 가능도의 향상 운영체제의 역할 사용자의 하드웨어 접근이 용이하도록 운영체제가 하드웨어 제어, 입력, 출력 등의 관리를 수행 한정된 하드웨어 자원을 다수의 이용자가 공유할 수 있는 기능 수행 프로세스, 메모리, CPU 등의 한정된 자원의 용량을 효율적으로 사용하기 위하여 자원 스케줄링 제공 응용 프로그램의 작성과 실행이 편리하도록 시스템 호출을 제공 예..

리눅스온보드 Linux Onboard

Linux Onboard 내 리눅스시스템에서 사용 중인 화상 보드. '리눅스 온보드' 내가 사용하는 리눅스 시스템은 구닥다리 노트북이다. 친구가 3년전 사용할 수 없다고 버린 것을 리눅스를 깔아 쓴다. '쓴다'는 표현은 좀 그렇다. 그냥 리눅스 깔았다 지웠다 한다. 32비트 버전으로. 키보드 키 열다섯 개는 먹히지 않는다. 피시 키보드를 연결하면 해결! 그러다가 그런 키보드도 없으면 화상키보드를 쓴다. 아이콘을 작업 패널에 올려 사용하면 편하다. 문제는 로그인 암호를 입력할 때다. 그래서 먹히는 키를 조합해 로그인 암호로 쓴다. 이래뵈도 요즘 노트북이 할 수 없는 일을 이 녀석은 한다. CD나 DVD를 돌릴 수 있다. VGA연결도 가능하다. 이래뵈도 메모리는 4GIGA. 제법 쏠쏠하다. 64비트 리눅스가..

Linux 2021.12.14