OS 8

[쉽게 배우는 운영체제] 2. 컴퓨터의 구조와 성능 향상

조성호 님의 "쉽게 배우는 운영체제" 책을 정리한 포스팅 입니다. 1. 컴퓨터의 기본 구성 하드웨어의 구성 CPU (중앙 처리 장치) 명령어를 해석하여 실행하는 장치입니다. 외부에서 정보를 입력받고, 기억하고, 명령어를 해석하여 연산하고, 외부로 출력합니다. Memory (주기억장치) 작업에 필요한 프로그램과 데이터를 저장하는 장치입니다. 바이트 단위로 분할되어 있으며, 분할 공간마다 주소로 구분됩니다. I/O Device 외부 세계간의 데이터 전송을 담당하는 장치입니다. 보조기억장치 자성 : 플로피 디스켓, 하드디스크 레이저 : CD, DVD, Blu-ray disc 메모리 : USB flash drive, SD Card, SSD Main Board 시스템을 작동시키는 핵심 부품을 장착할 수 있는 슬..

OS 2024.01.11

[쉽게 배우는 운영체제] 1. 운영체제 개요

조성호 님의 "쉽게 배우는 운영체제" 책을 정리한 포스팅 입니다 1. 소개 프로그래밍의 도입 초기 컴퓨터는 설계된 대로만 사용할 수 있었습니다. 사용자의 개입이나 프로그래밍 구현이 부족했습니다. 프로그래밍을 통해원하는 프로그램을 추가하고 실행할 수 있게 되었습니다. 자원관리 및 사용자 인터페이스 제공 이때, 프로그램이 사용하는 자원을 관리하고 사용자 인터페이스를 제공합니다. 동시성 관리 하드웨어의 발전으로 병렬 처리가 가능해지면서, 여러 작업을 동시에 실행할 수 있게 되었습니다. 병렬 실행에 필요한 동시성 관리의 역할을 합니다. 2. 역사 ENIAC 세계 최초의 전자 디지털 범용 컴퓨터 진공관 컴퓨터 약 18,000개의 진공관을 사용하였습니다. 30톤의 무게가 나가는 거대한 크기 하드와이어링 방식 전선..

OS 2023.12.26

[ 리눅스 마스터 ] 6. 쉘

1. 쉘 커널과 사용자간의 다리역할. 명령을 해석하여 프로그램을 실행함. 커널과 분리된 프로그램이며 종류가 많음. - 가지고 있는 쉘 확인 : $SHELL, chsh -l, cat /etc/shells - 쉘의 변경 : ' chsh -s /bin/바꿀 쉘 "사용자이름" ' 2. 환경설정 환경변수 HOME : 홈 디렉터리 PATH : 실행파일을 찾는 경로 LANG : 기본 셸 언어 TERM : 로그인한 터미널 PWD : 현재 경로 SHELL : 로그인 셸 USER : 사용자명 PS1 : 프롬프트 변수 MAIL : 도착한 메일이 저장되는 경로 UID : 사용자ID 주요 환경변수 \d : 요일, 월, 일 형태로 날씨 출력 \h : 호스트 이름 \s : 사용중인 셸 시간 \t : 24시간 형태 현재 시간 출력 ..

OS/Linux 2021.08.13

[ 리눅스 마스터 ] 5. 파일 시스템

1. 파일 시스템 운엥체제가 파티션, 디스크 등 데이터를 읽고 쓰는 일련의 체제 파일 백업 및 복구 가능. 적절한 이동 필요. 인터페이스나 명령어 사용가능. 다른사용자와 공유하여 사용가능하며 명령로그를 기록함. 다양한 파일시스템 지원 2. 파일 시스템 구조 파티션 분할하여 포맷하여 파일시스템으로 사용함 부트블록 : 운영체제를 주기억장치에 올리는 역할을 하는 프로그램이 들어있는 영역 슈퍼블록 : 디스크에 대한 다양한 젖ㅇ보를 저장하고 있는 곳. (전체 블록의 수, 블록의 크기, 사용중인 블록의 수 등의 정보 저장) inode 리스트 : inode들을 모아놓은 곳. 한 블록에 여러 개의 inode를 저장함. inode는 파일에 대한 다양한 정보를 저장하는 곳으로 파일마다 하나씩 부여됨. 데이터블록 : 일반적..

OS/Linux 2021.08.13

[ 리눅스 마스터 ] 4. 부팅과 셧다운

1. 하드웨어 인식 단계 BIOS가 하드웨어를 점검하고 부팅 HDD를 점검함. 이후 MBR에 있는 부트 매니저 프로그램 실행하여 운영체제를 시작함. 메모리에 커널이 로드됨. 커널 매개변수를 지정하여 설정 및 변경이 가능함. 커널은 모듈을 사용함. (/etc/modeprobe.conf 파일로 부트 매니저 프로그램에 매개변수값을 바꿀 수 있음.) 2. 소프트웨어 구동 단계 루트파일 시스템을 읽기 전용 형태로 마운트하고 이상이 없으면 읽고 쓰는 형태로 다시 마운트함. 이 때 init 프로세스(/inittab) 생성됨. 해당 init프로세스가 소프트웨어 구동을 레벨별로 위임하여 운영체제를 동작시킴. /etc/inittab : 부팅과 관련된 실행레벨을 정의함. /etc/init/rcS.conf : 시스템 초기화 ..

OS/Linux 2021.08.13

[ 리눅스 마스터 ] 3. 디렉터리 구조 및 역할

1. 디렉터리 종류와 특징 / : 루트 디렉토리 /bin : 바이너리. 기본명령어 들어있음 /boot : 부팅파일 (grub, config ...) /dev : 장치파일 (disk, cpu...) /etc : 서비스의 환경설정파일, 부팅, 실행, 스크립트 파일 등 /home : 사용자 홈 디렉토리 생성 위치 /lib : 라이브러리. 언어해석기 /lost+found : fsck사용. 시스템복구용으로 사용됨 /mnt : 원격장치 사용시 경로 /media : 로컬장치 사용시 디렉토리 /opt : 응용프로그램이 설치될 때 /misc : autofs 사용시 기본적으로 사용됨. 자동 파일 시스템 /root : 관리자 디렉토리 /sbin : 시스템 바이너리 약자. 시스템 명령어. root만 사용 /tmp : 임시저장..

OS/Linux 2021.08.06

[ 리눅스 마스터 ] 2. 리눅스 구조

1. 부트 매니저 부팅을 도와주는 프로그램. 하나의 컴퓨터에 다양한 O/S가 있을 경우 선택해서 부팅할 수 있게 도와줌. MBR에 설치됨. (HDD의 맨 앞에 위치. 0번째 섹터. 512Byte. 부트매니저 프로그램+파티션 정보 저장) GRUB이 대표적. 여러 파일시스템을 지원하며 커널의 인자 조정이 가능하여 동적인 부팅을 지원함. a : grub.conf에서 kernel과 관련된 매개변수를 추가할 수 있음. e : grub.conf에서 부팅 목록의 모든 항목을 직접 편집 가능. c : 상호 대화식으로 명령어 입력 가능 2. GRUB의 환경설정 파일 '/boot/grub/grub.conf' - boot : 부팅이 되는 HDD 지정 하기. - default : 전원을 켰을 때 기본적으로 부팅되는 운영체제를..

OS/Linux 2021.08.06

[ 리눅스 마스터 ] 1. 하드웨어

하드웨어 자동으로 인식가능. (최신기기는 수동으로 등록) 하드디스크 드라이브 IDE /dev/hda 에 마운팅됨 SCSI : 직렬화 구조. SATA : 하드디스크 드라이브의 속도와 연결 방식을 개선함. /dev/sda 에 마운팅됨 3. 모니터와 비디오 어댑터 X-window 기반의 GUI 환경에서 중요 4. 네트워크 인터페이스 이더넷(근거리통신규격. 2계층. CSMA/CD 충돌장치. Intel이 대표적) 모뎀(변조, 복조기) ATM, ISDN 지원. 무선랜 지원. 기본적으로 IP주소, 넷마스크, 게이트웨이, DNS서버(자동) 사용하여 네트워킹함. 5. CD-ROM 및 DVD-ROM 파일 형식. /dev/cdrom(원본은 /dev/sr0)에 심볼릭 링크 파일이 생성됨 6. RAID 여러개의 HDD에 데이..

OS/Linux 2021.08.06