Daily note

Today I Learned(TIL)-32(CS정리)

Jun.o 2024. 8. 6. 22:30

C S 강 의

1. 컴퓨터 구조와 운영체제

 

- 하드웨어

 

메인보드

- 컴퓨터의 부품 및 장치들을 설치하여 연동할 수 있게끔 하는 부품

 

CPU(중앙처리장치)

- 컴퓨터의 두뇌역할을 함

- 명령어를 해석하여 연산을 수행

- 컴퓨터의 성능에 크게 관여함.

 

클럭

- CPU의 처리속도를 나타내는 단위

- '오버클럭' 기존의 컴퓨터의 속도를 강제로 빠르게하는 기술

 

GPU(그래픽처리장치)

- 그래픽 연산을 하기 위해 병렬처리를 할 수 있도록 설계

- 병렬처리 : 수천개의 코어가 동시연산작업하는 것

 

=> GPU 심화

- AI를 학습하는 작업도 수행함

- 쉽지만 많은 양의 연산을 수행해야 해서

CPU < GPU

 

 

주기억장치

컴퓨터의 수치, 자료, 명령등 기억 프로그램및 운영체제가 실행되기 위해 위치되는 곳

 

RAM

- 운영체제가 적재됨

- 휘발성 메모리 (껏다키면 삭제됨)

 

=> 심화

- DRAMSRAM 2가지 종류가 있음

- DRAM : 우리가 일반적으로 알고있는 램

- SRAM : CPU 내부에서 CPU,DRAM의 속도차이를 해결하기 위해 캐시메모리역할 수행

 

=> 심화2

CPU,GPU,RAM등 이런 중요부품들에는 '반도체'라는 물질 사용

- 반도체 : 전기가 흐르는 '도체'와 전기가 흐르지 않는 '부도체'의 중간 성질

사용하는이유는?? : 전류를 제어하는데 있어서 매우!! 탁월함

 

보조기억장치

- 비 휘발성 메모리

- 운영체제 및 일반 프로그램들 저장

- RAM보다 속도가 느려서 적재용으로 주로사용

 

보조
기억
장치
정의 장점 단점
하드
디스크 (HDD)
동그란 원판에 물리적으로 접근하여 데이터를 적재하는 보조기억장치 · 데이터 복구가 쉬움
· 가격이 저렴
· 처리속도가 느림
· 물리적으로 약함
SSD 반도체의 전기신호를 이용하여 데이터를 적재하는 보조기억장치 · 처리속도가 빠름
· 물리적으로 튼튼
· 데이터 삭제시
복구가 어려움
·가격이 비쌈

 

 

입력장치

사용자가 컴퓨터를 조작할 수 있게 해주는 모든 장치

- 종류 : 마우스,키보드,스캐너,마이크,카메라 등등...

 

출력장치

컴퓨터가 사용자에게 조작을 받아 표현하는 모든장치

- 종류 : 모니터, 스피커, 프린터, 조명 등등...

 

OS(운영체제)

사용자가 컴퓨터를 조작 및 제어하고 작업의 편의성을 제공하기위한 '시스템 소프트웨어'

 

운영체제의 목적

- 처 리 능 력 : 일정 시간내에 시스템이 처리하는 작업량

- 반 환 시 간 : 작업을 완료할 때까지 걸리는 시간

- 사용 가능도 : 요청이 있을 때 즉시 사용 가능한 정도

- 신 뢰 도 : 주어진 요청을 정확하게 해결하는 용도

 

운영체제 주요 자원관리

- 프로세스 관리 : 실행되는 프로그램을 관리

- 기억장치 관리 : 프로세스에게 할당된 메모리 관리

- 주변장치 관리 : 입출력 장치 관리

- 파 일 관 리 : 파일의 생성과 삭제, 변경, 유지관리

 

다양한 운영체제

운영체제(OS) 종류 장점 단점
WinDows · 사용자 친화적
· 인터페이스 구성 표준화
· 확장성
· 넓은 사용자 커뮤니티
· 보안 취약함
· 라이센스 비용
· 불확실한 업데이트로 인한 버그
MacOS · 우수한 보안성
· 하드웨어 최적화
· 소프트웨어 생태계
(일명 사과농장)
· 고비용
· 제한적인 커스터마이징
· 제한적인 호환성
IOS · 보안
· 일관된UI
· 앱 스토어 및 생태계
· 최신 기술 지원
· 제한적인 커스터마이징
· 앱 호환성
· 파일관리 및 접근 어려움
· 고비용
· 하드웨어 제한 (사과농장)
Linux · 무료
· 보안
· 커스터마이징
· 다양한 배포판
· 소프트웨어 호환성
· 인터페이스가 어려움
· 상용지원이 부족함
· 사용자 입문이 어려움
안드로이드 · 무료
· 광범위한 기기지원
· 소프트웨어 생태계
· 구글 서비스와 통합
· 커스터마이징
· 버전에 따른 호환성 문제
· 보안
· 개인정보
반드시 알아야 할 개념
프로세스 · 실행중인 프로그램을 의미
프로세싱 · 프로그램이 실행중인 것을 의미함

멀티
테스킹
· 하나의 시스템 또는 CPU가 여러 작업을 수행하는 것
· 동시에 처리가 되는 것은 아니고 시분할 방식을 통해 동시에 처리되는 것처럼 보임
· 큼지막한 작업 단위
ex_)유튜브 구글링을 하고 문서작성을 하는 것 (작업단위)

멀티
프로세싱
· 두 개 이상의 프로세스가 동시에 실행되는 것
· 여러개의 CPU가 여러 작업을 동시에 수행함
ex_) 크롬열고 롤하고 유튜브하는 것 (프로그램 단위)

멀티
스레드
· 하나의 프로세스가 여러작업 단위를 가지며 작업을 수행하는 것
· 멀티테스킹 보다 작은 단위
ex_) 크롬브라우저 하나 켜놓고 다른 여러개 사이트 틀어놓는 것
스케줄링 · 작업에 필요한 자원을 언제 누가 어떻게 사용할지 결정해 주는 것
커널 · 하드웨어와 응용프로그램 사이에서 인터페이스 역할 수행하기 위한
핵심부분
터미널 · 사용자와 컴퓨터 간에 상호작용을 제공하는 인터페이스
CUI · 사용자가 문자를 통해 명령을 수행하는 것
GUI · 사용자가 그래픽을 통해 명령을 수행하는 것

이해하기위한 정리 한번 더

멀티 쓰레드 프로세스가 하는 작업단위

ex) 크롬에 구글, 네이버, 네이트를 켜놓는거

멀티 프로세싱 여러개의 프로세스들이 동시에 진행

ex) (프로그램)켜놓고, 유튜브(프로그램)보고 하는거

멀티 테스킹 작업단위

ex) (작업)켜놓고, 유튜브(작업)보고, 문서작성(작업)

'Daily note' 카테고리의 다른 글

Today I Learned(TIL)-33(CS정리3)  (0) 2024.08.08
Today I Learned(TIL)-33(CS정리2)  (0) 2024.08.07
Today I Learned(TIL)-31  (0) 2024.08.05
Today I Learned(TIL)-30  (0) 2024.08.02
Today I Learned(TIL)-29  (0) 2024.08.01