[Operating System] 운영체제

임수정·2024년 6월 27일
0

📝 Learning Log

목록 보기
11/47
post-thumbnail

📍 운영체제(OS)란?

운영체제(OS, Operating System)
응용 프로그램 또는 사용자가 컴퓨터 하드웨어를 편리하고 효율적으로 사용하게 하기 위하여 시스템 자원(메모리, 프로세서 등)을 관리하고 여러가지 프로그램이 필요로 하는 공통적인 서비스를 제공하는 소프트웨어
컴퓨터 시스템의 핵심 소프트웨어로, 컴퓨터 하드웨어와 응용 프로그램 간의 상호작용을 관리하고 제어하는 역할

운영체제의 목적사용자와 하드웨어 사이의 인터페이스를 제공해 효율적으로 응용 프로그램이 동작하도록 지원하고, 시스템 자원을 효율적으로 관리하여 응용 프로그램이 원활하게 동작할 수 있도록 한다.

운영체제의 코어(핵심) 부분을 커널(Kernal)이라고 하는데, 일반적으로 커널에 여러가지 기능(라이브러리, 시스템 프로그램 등)이 추가된 상태를 통칭하여 운영체제(OS)라고 한다.

📍 운영체제(OS)의 역할

① 자원 관리

  • 운영체제는 컴퓨터 시스템의 하드웨어 자원을 효율적으로 관리하는 역할
  • CPU(중앙처리장치), 메모리(Memory), 저장장치(Storage), 입출력장치(I/O Device) 등 하드웨어의 자원을 할당하고 관리하여 여러 응용 프로그램이 동시에 실행될 수 있도록 한다.

② 메모리 관리

  • 운영체제는 컴퓨터의 메모리를 효율적으로 관리하여 응용프로그램이 필요로 하는 메모리공간을 할당(메모리의 할당과 해제, 가상 메모리 관리 등을 모두 포함)

③ 프로세스 관리

  • 운영체제는 실행 중은 응용프로그램인 프로세스(Process)를 관리
  • 여기서 프로세스의 생성, 실행, 일시정지, 시스템 중지 등의 작업을 제어하며, 여러 프로세스간의 자원 공유와 협력을 관리

④ 디스크 및 파일 시스템 관리

  • 운영체제는 디스크와 파일 시스템을 관리하여 파일의 생성, 삭제, 복사, 이동 등의 작업을 처리
  • 파일 시스템은 데이터의 영구적인 저장과 접근을 제공하여 사용자 및 응용 프로그램이 데이터를 쉽게 관리할 수 있도록 한다.

⑤ 입출력 관리

  • 운영체제는 입출력 장치와 상호작용을 관리
  • 사용자와 응용 프로그램이 키보드, 마우스, 디스플레이, 프린터 등과의 통신을 할 수 있도록 지원하고 입출력 장치의 성능을 최적화

⑥ 사용자 인터페이스

  • 운영체제는 사용자와 컴퓨터 간의 상호작용을 지원하는 사용자 인터페이스 제공
  • 텍스트 기반의 터미널 환경(CLI, Command Line Interface)과 그래픽 사용자 환경(GUI, Graphical User Interface)을 통해 사용자가 컴퓨터를 조작할 수 있도록 한다.

⑦ 네트워킹

  • 운영체제는 컴퓨터 네트워크를 관리하고, 네트워크 프로토콜을 지원하여 컴퓨터 간의 통신을 가능하게 한다.
  • 인터넷 연결, 데이터 전송, 네트워크 보안 등을 관리

⑧ 오류 처리

  • 운영체제는 시스템 내부 또는 외부에서 발생하는 오류와 예외 상황을 처리
  • 여기서 프로세스의 비정상 종료, 메모리 오버플로우, 입출력 오류 등을 감지하고 처리하여 시스템의 안정성과 신뢰성 유지

⑨ 시스템 보안

  • 운영체제는 시스템의 보안을 유지하기 위해 접근 제어, 사용자 인증, 암호화 등의 기능을 제공
  • 불법적인 접근과 데이터 유출 등으로부터 시스템을 보호하고 안전한 환경 제공

📖 운영체제(OS) 32bit VS 64bit

32bit/64bit는 컴퓨터 CPU(중앙처리장치)가 데이터를 처리할 때 사용하는 레지스터의 크기를 말한다.

레지스터 : 극히 소량의 데이터나 처리 중인 중간 결과를 일시적으로 기억해두는 고속의 전용 영역

하나의 단위를 말한다고 생각하면 되는데 쉽게 말해서 32bit보다 64bit가 속도가 빠르고 많은 메모리 사용이 가능!

보통 64bit CPU의 경우에는 32bit도 지원하지만 32bit CPU에 64bit OS(운영체제)를 적용시키면 성능이 떨어진다.

둘 차이는 극심한데 32bit는 최대 약 4GB까지 메모리(RAM)만 인식할 수 있는 반면 64bit는 16엑사바이트까지 인식이 가능(1엑사바이트 == 약 100만테라바이트)

32bit는 x86이라고도 불리고 64bit는 x64이다.
이유는 과거 인텔 CPU 칩셋 번호가 x86이었기때문...

자신이 사용하는 컴퓨터가 몇 비트인지 확인하는 방법

① [window]+[R] → 'dxdiag' → 운영체제 확인
② 제어판 → 시스템 및 보안 → 시스템

📍 WORD

컴퓨터에서 연산의 기본 단위가 되는 정보의 양 / CPU가 한번에 다루는 데이터의 단위

32bit cpu라면 그 머신의 기본 데이터 처리 단위는 32bit가 되는 것
64bit cpu라면 그 머신의 기본 데이터 처리 단위는 64bit가 되는 것

비트는 정보 처리의 단위니까, 당연히 64bit는 32bit 머신보다 한번에 처리할 수 있는 데이터 크기가 2배

📖 WORD 사이즈 VS 레지스터 사이즈

Word 사이즈와 레지스터는 서로 다른 개념

Word 사이즈

컴퓨터 아키텍처에서 사용되는 용어로, 하나의 기계가 명령어를 처리할 수 있는 데이터 크기를 의미

Word 사이즈는 일반적으로 컴퓨터 아키텍처의 기본 데이터 처리 단위를 나타내며, 16bit/32bit/64bit 등으로 표현 가능

예를들어서 32bit 아키텍처에서는 데이터와 명령어가 32bit로 처리됨

레지스터 사이즈

CPU 내부에 있는 소규모 메모리로, 연산에 필요한 데이터를 일시적으로 저장하는데 사용

레지스터 사이즈는 보통 컴퓨터의 워드 사이즈와 같거나 그보다 작음

예를 들어서 32비트 아키텍처에서는 레지스터도 32비트 크기일 수 있지만, 16비트 아키텍처에서는 16비트 레지스터가 사용될 수 있습니다.

따라서 Word 사이즈와 레지스터 사이즈는 서로 다른 개념이지만, 일부 컴퓨터 아키텍처에서는 Word 사이즈와 레지스터 사이즈가 동일할 수 있다.

profile
언어는 거들 뿐...

0개의 댓글