전체 글 243

[OS] 커널(Kernel)이란

커널이란 커널은 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분으로써 하드웨어와 응용 프로그램 사이에서 인터페이스를 제공하는 역할을 하며 컴퓨터 자원들을 관리하는 역할을 한다. 즉, 커널은 인터페이스로써 응용 프로그램 수행에 필요한 여러가지 서비스를 제공하고, 여러가지 하드웨어(CPU, 메모리) 등의 리소스를 관리하는 역할을 한다. 다만 이러한 커널은 항상 컴퓨터 자원들을 바라만 보고 있기에 사용자와의 상호작용은 지원하지 않는다. 따라서 사용자와의 직접전인 상호작용을 위해 프로그램을 제공하게 되는데, 대표적으로 쉘(Shell)이라는 명령어 해석기등이 있다. 커널의 자원 관리 커널의 가장 큰 목표는 컴퓨터의 물리적(하드웨어) 자원과 추상화 자원을 관리 하는 것이다. 추상화란 물리적으로 하나뿐인..

Operating System 2021.12.15

[운영체제와 정보기술의 원리] 03장. 컴퓨터 시스템의 동작 원리

컴퓨터 시스템의 구조 컴퓨터 시스템의 구조는 컴퓨터 내부장치인 CPU, 메모리와 컴퓨터 외부 장치인 디스크, 키보드, 마우스, 모니터, 네트워크 장치등으로 구성된다. 외부장치에서 내부장치로 데이터를 읽어와(입력) 연산을 처리후 그 결과를 외부장치로 내보내는 방식(출력)이다. 이것을 입출력(I/O)이라고 한다. 따라서 외부장치를 입출력 장치라고도 한다. 메모리 및 입출력장 등의 하드웨어 장치에는 컨트롤러가 있다. 컨트롤러는 일종의 작은 CPU로써 각 하드웨어 장치에서의 제어를 담당한다. 메모리를 제어하는 메모리 컨트롤러, 디스크를 제어하는 디스크 컨트롤러등이 있다. 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분을 커널이라고 한다. CPU 연산과 I/O 연산 컴퓨터내에서 수행되는 연산은 메인 ..

Summary 2021.12.14

[운영체제와 정보기술의 원리] 02장. 운영체제 개요

운영체제의 정의 운영체제(Operating System)란 컴퓨터 HW 바로 윗단에 설치되는 SW로써, 사용자 및 다른 SW와 HW를 연결하는 소프트웨어 계층이다. SW인 운영체제에 HW가 한몸이 되어 컴퓨터 시스템이 된다. 운영체제 자체도 하나의 SW이기에 컴퓨터의 전원이 켜짐과 동시에 필요한 부분만 메모리에 올라가고 필요하지 않은 부분은 그때그때 메모리에 올려서 사용한다. 이때 메모리에 상주하는 운영체제의 부분을 커널(Kernel)이라고 하며 좁은의미의 운영체제이다. 운영체제의 기능 운영체제는 크게 두가지 역할로 나누어 볼 수 있다. 하드웨어를 위한 역할로는 시스템 내의 자원을 효율적으로 관리하는 것이고, 사용자를 위한 역할로는 시스템을 편리하게 사용할 수 있는 환경을 제공하는 것이다. 편리한 환경 ..

Summary 2021.12.14

[Web] HTTP와 HTTPS

HTTP (Hypertext Transfer Protocol) HTTP란 HTTP는 Hypertext Transfer Protocol의 줄임말로써 웹 서비스에서 클라이언트와 서버 간에 데이터를 통신하기 위해 사용되는 프르토콜이다. 즉 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로 80번 포트를 사용하고 있다. HTTP 서버가 80번 포트에서 요청을 기다리며 클라이언트는 80번 포트로 요청을 보내게 된다. 인터넷의 초기에 모든 웹 사이트에서 기본적으로 사용되었던 프로토콜이다. HTTP 특징 (HTTP1.0 기준) HTTP는 초기버전인 1.0 기준 대표적으로 Stateless, Conncetionless의 특징을 가지고 있다. Stateless(무상태) : 서버는 클라이언트의 상태를 저장하지 않는다...

Network 2021.12.09

[모두의 네트워크] 08장. 네트워크의 전체 흐름 살펴보기

랜 카드에서의 데이터 전달과 처리 네트워크의 구성 응용 계층 : 애플리케이션 등에서 사용하는 데이터를 송수신하는데 필요 전송 계층 : 목적지에 데이터를 정확하게 전달하는데 필요 네트워크 계층 : 다른 네트워크에 있는 목적지에 데이터를 전달하는데 필요 데이터 링크 계층 : 랜에서 데이터를 송수신하는데 필요 물리 계층 : 데이터를 전기 신호로 변환하는데 필요 컴퓨터의 데이터가 전기신호로 변환되는 과정 (캡슐화) URL을 입력 3-way handshake후 connection 맺음. 응용 계층에서 GET 메서드로 HTTP 요청. 전송계층에서 출발지와 목적지 포트번호가 적힌 TCP 헤더가 붙은 세그먼트를 만듬. 출발지 포트는 1025번 이상에서 무작위, 목적지 포트는 HTTP이기에 80포트. 네트워크 계층에서는..

Summary 2021.12.08

[모두의 네트워크] 07장. 응용 계층 : 애플리케이션에 데이터 전송하기

응용 계층의 역할 응용 계층 OSI 7계층 중 7계층, 최상위 계층으로써 다양하게 존재하는 응용 환경에서 공통적으로 필요한 기능을 담당. 시스템 상호간 통신하면서 일련의 업무를 처리할 수 있도록 필요한 서비스 기능을 제공. 이메일, 파일 전송, 웹 사이트 조회등 애플리케이션에 대한 서비스를 제공하는 계층. 클라이언트의 요청을 전달하기 위해 서버가 이해할 수 있는 데이터로 변환하고 전송 계층으로 전달하는 역할을 수행. 따라서 프로토콜이 필요함. 웹 서버의 구조 WWW (World Wide Web) 서로 연결되어 있으며 사이트, 데이터, 정보를 가지고 접근하거나 공유하여 주고 받을 수 있는 멀티미디어 인터넷 서버. 기술로써는 HTML, URL, HTTP가 사용이 됨. HTML (HyperText Markup..

Summary 2021.12.08

[모두의 네트워크] 06장. 전송 계층 : 신뢰할 수 있는 데이터 전송하기

전송계층의 역할 전송 계층 OSI 7계층 중 4계층으로써 물리, 데이터 링크, 네트워크를 거쳐 넘어온 데이터를 목적지에 신뢰할 수 있도록 전달하는 기능을 담당. 신뢰할 수 있는 데이터를 순차적으로 전달하는 역할을 하며 상위 계층들이 데이터 전달의 유효성이나 효율성을 신경쓰지 않도록 해줌. 데이터가 중복되거나 누락되지 않고 오류 없이 순서에 맞게 전송되도록 관리. 즉, 정리하자면 크게 오류 점검기능, 목적지의 애플리케이션 식별 기능 제공. 연결형 통신과 비연결형 통신 전송계층의 특징은 데이터를 목적지에 문제없이 전달하는 신뢰성/정확성과 데이터를 빠르게 전달하는 효율성으로 구분 가능. 연결형 통신은 데이터를 교환하기 전에 연결을 맺고 데이터를 교환하는 동안 계속 연결을 관리하는 프로톨의 형태로써 신뢰할 수 ..

Summary 2021.12.06

[Network] 리피터, 허브, 스위치, 라우터

리피터 OSI 7계층 중 1계층인 물리계층에서 동작하는 장치 신호를 수신하여 신호를 증폭한 후 다음 구간으로 재전송하는 장치 감쇠된 전송신호를 새롭게 재생하여 증폭하는 장비 근거리 통신망을 구성하는 세그먼트들을 확장하거나 연결하는데 사용 전자기장 확산이나 케이블 손실로 인한 감쇠를 보상해주기에 어러 대의 리피터를 사용하여 먼거리까지 데이터를 전달 가능 요즘은 허브등의 다른 네트워크 장비가 리피터의 기능을 지원 허브 (더미 허브, 리피터 허브) OSI 7계층 중에서 1계층인 물리계층에서 동작하는 장치 랜을 구성할 때 사무실이나 가까운 거리에 있는 장비들을 케이블 사용하여 연결하는 장치 크게 리피터와 멀티포트의 역할 제공 리피터와 마찬가지로 전기 신호를 정형하고 증폭하는 기능을 지원(리피터) 중심축에 놓여 ..

Network 2021.12.01

[모두의 네트워크] 05장. 네트워크 계층 : 목적지에 데이터 전달하기

네트워크 계층의 역할 네트워크 계층 OSI 7계층 중 3계층으로써 다른 네트워크와 통신하기 위한 경로 설정을 위해 라우터를 통한 라우팅을 하며 패킷 전송을 담당. 데이터 링크 계층에서는 이더넷 규칙과 스위치를 기반으로 데이터를 전송하지만 같은 네트워크로 범위가 한정적. 따라서 다른 네트워크들끼리의 통신을 위해 네트워크 간의 통신을 가능하게 하는 것이 네트워크 계층의 역할. 이것을 라우터를 통해 실현. 라우터 서로 다른 네트워크를 연결해 주는 장치로써 현재의 네트워크에서 다른 네트워크로 패킷 전송. 해당 목적지까지 어떤 경로로 가는 것이 좋은지 알려줌. 라우팅 네트워크에서 패킷을 목적지로 보낼때 목적지까지 갈수 있는 여러가지 경로 중 한가지 경로를 설정해주는 과정. 라우터에 라우팅 테이블이 존재하여 경로정..

Summary 2021.12.01

[모두의 네트워크] 04장. 데이터 링크 계층 : 랜에서 데이터 전송하기

데이터 링크 계층의 역할과 이더넷 데이터 링크 계층 OSI 7계층 중 2계층으로써 네트워크 기기 간에 데이터를 전송하고 물리주소를 결정하는 계층. 랜에서 데이터를 주고 받으려면 데이터 링크 계층의 기술이 필요. 네트워크 장비 간에 신호를 주고 받는 규칙을 정하는 계층. 즉, 랜에서 데이터를 정상적으로 주고 받기 위해 규칙을 정하고, 보통 규칙으로 이더넷(Ethernet) 사용. 이더넷 (Ethernet) 컴퓨터 네트워크 기술 중 하나로 일반적으로 사용되는 랜에서 가장 많이 활용되는 기술 규격. 랜에서 적용되는 데이터 링크 규칙으로써 허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고 받을 때 사용. 허브의 문제점이었던 모든 컴퓨터가 데이터를 받는 현상을 데이터에 목적지 정보를 추가하는 규칙으로 극복. 또한..

Summary 2021.12.01