728x90 개발공부 개발새발/OS24 OS ) 가상화와 컨테이너 차이 컨테이너?실행에 필요한 모든 파일을 포함한 실행 환경(runtime)에서 애플리케이션을 패키징하고 격리할 수 있는 기술.호스트 운영체제와 커널을 공유하여 “경량화” → VM 없음.서로 다른 컨테이너는 독립적으로 실행되고, OS 운영체제와 “격리”하여 실행.컨테이너 이미지에 애플리케이션 환경을 포함 → 어떤 시스템에서든 동일하게 실행 가능.전체 기능은 유지하면서 컨테이너화 된 애플리케이션을 환경(개발, 테스트, 프로덕션 등)에 따라 쉽게 이동할 수 있음.프로세스 기반이라 빠르다.Docker 같은 컨테이너 플랫폼을 이용해 컨테이너를 쉽게 빌드, 배포, 실행 가능.동작 원리Namespace네임스페이스를 통해 프로세스, 파일시스템, 네트워크 등을 격리.Namespace 를 통해 각 컨테이너는 독립된 환경처럼 격.. 2025. 1. 14. OS ) 시스템 콜 시스템 콜운영체제에 의해 사용 가능하게 된 서비스에 대한 인터페이스 제공일반적으로 하드웨어를 직접 접근하는 시스템 콜은, C 와 C++ 언어를 이용한 함수 형태로 제공된다.예제 ) 파일 데이터 읽어서 다른 파일로 복사하기프로그램이 필요한 첫 번째 입력은 두 개의 파일, 즉 “입력 파일”과 “출력 파일”의 이름일 것.명령의 일부로 두 파일 이름을 전달하는 것일 텐데..# 이 명령은 입력 파일 in.txt 를 출력 파일 out.txt 에 복사한다.cp in.txt out.txt두 번째 입력은 프로그램이 사용자에게 이름을 요청하는 것.대화형 시스템에서는 시스템 콜이 필요할 것이다.예) 화면에 프롬프트 메시지를 작성하고 키보드에서 두 파일 이름을 지정하는 문자를 읽고, 마우스나 아이콘 기반 시스템에서 파일 이름.. 2024. 12. 30. OS ) 스레드의 컨텍스트 스위칭 컨텍스트 스위칭현재 실행하던 작업 내용(컨텍스트)을 저장하고, 다른 작업 내용(컨텍스트)를 가져와서 실행하는 것.둘의 공통점프로세스와 스레드의 컨텍스트 스위칭에서 공통적으로 나타나는 것들.둘 다 컨텍스트 스위칭이 발생할 경우 현재 실행중인 컨텍스트 값을 저장한다. (PCB 또는 TCB에 저장)TCB : Thread Control Block새로운 작업의 내용을 CPU 에 로드한다.CPU 가 새로운 작업을 실행한다.둘의 차이자원 공유프로세스 : 독립적인 메모리 공간을 가지고 있으니, 전체 메모리 맵을 전환하고 보호 메모리 설정도 변경된다. 한 마디로, 실행하고 있던 메모리말고 새 프로세스의 메모리를 가져와야하는 것을 의미한다.스레드 : 각 스레드의 독립적인 스택과 레지스터 상태만 전환한다.스레드는 프로세스의.. 2024. 12. 24. OS ) 이중 모드, 다중 모드, 타이머 이중 모드 Dual-Mode, 다중 모드 Multimode Operation운영체제는 잘못된 (또는 악의적인) 프로그램으로 인해 다른 프로그램이나 운영체제 자체가 잘못 실행될 수 없도록 보장해야 함.운영체제 코드 실행과 사용자 정의 코드 실행을 구분할 수 있어야 함.이중 모드는 잘못된 사용자로부터 운영체제를, 잘못딘 사용자를 서로 보호하는 방법을 제공하는데…두 가지 모드사용자 모드커널 모드모드 비트모드 비트 는 커널모드(0), 사용자모드(1) 을 나타낸다.이 모드 비트로 사용자를 위한 사용자 모드와 운영체제 실행 모드인 커널 모드를 구분할 수 있음.사용자 앱이 운영체제로부터 시스템 콜 로 서비스를 요청하면 요청을 수행하기 위해 사용자모드 → 커널모드로 전환.시스템 동작시스템 부트 시, 하드웨어는 커널 모.. 2024. 12. 22. OS ) 멀티 프로그래밍과 멀티 태스킹 멀티 프로그래밍과 멀티 태스킹운영체제는 하나의 프로그램만 사용하면 CPU 가 남으니까 여러 프로그램을 함께 실행할 수 있음.멀티 프로그래밍한 번에 둘 이상의 프로그래밍멀티 프로그래밍에서 실행 중인 프로그램을 프로세스 라고 한다.멀티 프로그래밍에서는 운영체제는 단순히 다른 프로세스로 전환하여 실행 한다.해당 프로세스가 대기해야 되는 경우 CPU는 다른 프로세스로 전환한다.CPU 유휴 상태를 방지 가능하다.멀티 태스킹다중 프로그래밍의 논리적 확장.CPU 는 여러 프로세스를 전환하며 프로세스를 실행하고 전환이 자주 발생하여 사용자에게 빠른 응답 시간을 제공한다.대화식 입출력(키보드 입력을 할 때 모니터에 출력되는 것 등)을 예를 들면대화식 입력이 진행되는 동안 CPU 를 쉬게 하지 않고 다른 사용자 프로그램으.. 2024. 12. 22. OS ) 운영체제의 작동 운영체제 작동컴퓨터 전원을 켜거나 재부팅을 하면 “초기 프로그램(부트스트랩)”이 실행 된다.부트스트랩“부트스트랩”이라고 불리는 이 프로그램은 컴퓨터 하드웨어 내에 “펌웨어”로 저장 된다.펌웨어 : 하드웨어에 저장되는 영구 프로그램.CPU 레지스터, 장치 컨트롤러, 메모리 등 모든 시스템을 초기화 한다.커널을 찾아 메모리에 적재한다.커널시스템과 사용자에게 서비스를 제공한다.💡 커널이 실행되는 시간 동안 실행되는 시스템 데몬은 커널 외부에서 제공한다. 예시) - Linux : sshd, network 설정 관리 등. - Window : 윈도우 업데이트 관리 등. - Mac : 네트워크 및 기타 설정 관리, 사용자 계정 서비스 등.운영체제는 실행할 프로세스, I/O 장치 등이 없다면 뭔가 발생할 때까지 기다.. 2024. 12. 19. 이전 1 2 3 4 다음 728x90