OS, Container 11

Operating-System Operations: 운영체제의 핵심 작동 원리

운영체제(OS)는 컴퓨터 하드웨어와 소프트웨어 자원을 효율적으로 관리하고 사용자와 응용 프로그램에 서비스를 제공하는 시스템 소프트웨어입니다. OS의 주요 작동 원리를 Python 코드 예제와 함께 살펴보겠습니다.프로세스 관리프로세스 관리는 OS의 가장 중요한 기능 중 하나입니다. 프로세스는 실행 중인 프로그램의 인스턴스를 의미하며, 여러 상태를 거치게 됩니다.프로세스 상태 전이프로세스는 생성부터 종료까지 다음과 같은 상태를 거칩니다:생성(NEW)준비(READY)실행(RUNNING)대기(WAITING)종료(TERMINATED)이를 Python 코드로 표현하면 다음과 같습니다:class Process: def __init__(self, pid): self.pid = pid se..

컴퓨터 시스템 아키텍처의 개념과 깊이 있는 이해

컴퓨터 시스템 아키텍처(Computer-System Architecture)는 컴퓨터 시스템의 기본 설계 원리와 구조를 다루는 중요한 주제입니다. 이 주제는 하드웨어와 소프트웨어 간의 상호작용을 이해하는 데 중요한 개념을 제공하며, 시스템의 성능, 효율성, 확장성에 직접적인 영향을 미칩니다. 이번 글에서는 컴퓨터 시스템 아키텍처의 주요 구성 요소와 설계 원리를 깊이 있게 살펴보겠습니다.1. 컴퓨터 시스템 아키텍처의 정의와 중요성컴퓨터 시스템 아키텍처는 컴퓨터 시스템의 구성 요소들 간의 관계와 상호작용을 정의하는 설계 방법론입니다. 이 아키텍처는 하드웨어 설계에서부터 소프트웨어, 운영체제, 그리고 시스템 전반에 걸쳐 영향을 미칩니다. 아키텍처는 시스템의 성능과 효율성을 좌우하며, 하드웨어와 소프트웨어의 최..

컴퓨터 시스템의 구성과 작동 원리

컴퓨터 시스템은 하드웨어와 소프트웨어의 상호작용을 통해 데이터를 처리하고, 명령을 실행하는 복잡한 장치입니다. 이 글에서는 컴퓨터 시스템의 구성 요소와 그들이 어떻게 협력하여 기능을 수행하는지 기술적으로 세부적으로 알아보겠습니다.1. 컴퓨터 시스템의 기본 구성 요소컴퓨터 시스템은 주로 중앙 처리 장치(CPU), 메모리, 입출력 장치(I/O Devices), 그리고 저장 장치(Storage Devices)로 구성됩니다. 각 구성 요소는 특정 역할을 담당하며, 이들 간의 상호작용을 통해 컴퓨터 시스템은 사용자 명령을 수행합니다.중앙 처리 장치(CPU): CPU는 컴퓨터의 '뇌'에 해당하는 부분으로, 모든 연산과 명령 처리를 담당합니다. CPU는 주로 제어 장치(Control Unit), 연산 장치(ALU, ..

운영체제의 역할과 기술적 세부 사항

운영체제(Operating System, OS)는 컴퓨터 시스템의 핵심이자, 사용자가 하드웨어와 소프트웨어를 효율적으로 사용할 수 있도록 중재하는 중요한 소프트웨어입니다. 운영체제는 사용자와 하드웨어 간의 인터페이스 역할을 하며, 리소스 관리, 프로세스 관리, 메모리 관리, 파일 시스템 관리 등 다양한 기능을 수행합니다. 이번 글에서는 운영체제가 수행하는 주요 기능을 기술적이고 세부적으로 다루어 보겠습니다.1. 프로세스 관리 (Process Management)운영체제는 컴퓨터에서 실행되는 모든 프로그램을 관리합니다. 프로그램이 실행되면, 운영체제는 이를 프로세스로 인식하고 프로세스를 관리합니다. 프로세스 관리의 주요 기능은 다음과 같습니다.프로세스 스케줄링 (Process Scheduling): 운영체..

AWS EKS on Fargate 구성

I. 구성동기 사내에서 hbase 분리 구성을 위해 EC2에서 EMR on EKS로 Migration을 분리 구성 및 이관 작업을 진행하려고 했다. EMR이 Managed 서비스라서, hbase를 신규 구성하는 후 APM에 맞춰서 구성 변경 후 이관을 해야해서 다음에 마무리할 예정이다. II. Architecture III. 구성하기 VPC에 vpc endpoint, NAT Gateway등 네트워크 구성을 선행한다. private subnet 및 방화벽 설정을 완료해야 한다. 네트워크 구성이 완료된 후 cloud9이나 bastion host를 구성 후, instance profile에 EKS, Cloudformation, IAM, EC2등의 자원 생성 권한을 부여한다. bastion host(또는 Clo..

OS, Container 2022.01.15

Shell Scripting(a.k.a Linux의 꽃)

sh(shell) n. 명령어와 프로그램을 실행할 때 사용하는 인터페이스. 최초의 shell이며, 모든 Linux system에서 사용가능. User Kernel 사이의 Interpreter 역할을 한다. Non-interactive. csh(C Shell) shell과 C 언어 기반으로 구현된 Shell. Script 작성 시, 프로그래밍적인 특성을 많이 갖는다. 처리 속도가 다소 느리다. en.wikipedia.org/wiki/C_shell ksh(Korn Shell) csh에서 처리속도가 빨리졌다. en.wikipedia.org/wiki/KornShell bash(Bourne Again Shell) csh와 ksh의 장점을 혼합하여 현재 리눅스의 표준 shell로 사용된다. 문법과 사용법에 대하여 ..

LVM

LVM n. In Linux, Logical Volume Manager (LVM) is a device mapper framework that provides logical volume management for the Linux kernel. Most modern Linux distributions are LVM-aware to the point of being able to have their root file systems on a logical volume. PV(Physical Volume) 물리 디스크라고 생각하면 된다. pvcreate으로 초기화해야, LVM에서 사용할 수 있다. VG(Volume Group) PV의 collection. vgcreate을 이용하여 생성. VG의 단위로 Dis..

GRUB(Ubuntu)

GRUB(GRand Unified Bootloader)란, Ubuntu를 부팅할 때 처음 나오는 선택화면! 간단하게 /etc/default/grub 설정파일의 내용만 이해해보자. # If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_TIMEOUT_STYLE=hidden GRUB_TIMEOUT=0 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || e..

Daemon, Service

Daemon n. In multitasking computer operating systems, a daemon (/ˈdiːmən/ or /ˈdeɪmən/) is a computer program that runs as a background process, rather than being under the direct control of an interactive user. Daemon = Service = Server Process Service는 늘 켜져있는(나 또는 시스템이 켰을 경우) Server Process이지만, Socket은 다르다. Socket은 필요할 때만, 작동하는 Server Process이다. Service와 Socket은 systemd가 작동시키거나 관리한다. systemd O..