👩‍💻 CS

해당 글은 한양대학교 이석복 교수님의 네트워크 강의를 듣고 정리한 글입니다.Application 5 계층 중 Transport layer의 작동 방식에 대한 내용을 정리하였습니다. 💡 TCP/IP 5 계층Application layer에서 Socket을 통해 Transport layer와 데이터를 주고받는다.Transport layer에서 Application layer에 제공하는 기능은 다음과 같다.Error CheckingMultiplexing & Demultiplexing 💡 Multiplexing & DemultiplexingMultiplexing한 Host에는 여러 개의 Socket이 존재한다. 각 Process마다 가지고 있는 Socket을 구분하기 위해 Port번호를 부여한다. 많은 So..
4. Process Management 💡 프로세스 생성 (Process Creation)부모 프로세스(Parent Process)가 자식 프로세스(Children Process)를 생성한다.프로세스가 또 다른 프로세스를 만드는 구조. 복제 생성프로세스의 트리(계층 구조)가 형성된다.프로세스는 자원을 필요로 한다. 이때, 자원은 운영체제(OS)로부터 받거나 부모와 공유한다.자원의 공유부모와 자식이 모든 자원을 공유하는 모델일부를 공유하는 모델(모든 자원을 공유하는 것보다 더 효율적임) ex) Linux전혀 공유하지 않는 모델수행(Execution)부모와 자식은 공존하며 수행되는 모델자식이 종료(terminate)될 때까지 부모가 기다리는(wait = blocked) 모델주소 공간(Address spac..
해당 글은 한양대학교 이석복 교수님의 네트워크 강의를 듣고 정리한 글입니다.  💡 인터넷과 프로토콜인터넷이란?컴퓨터 간 데이터를 주고받기 위해서 통신 프로토콜을 이용하여 연결시킨 네트워크를 의미한다. 프로토콜이란?서로 다른 두 시스템이 정보를 주고받기 위해서는 어떤 방식으로 정보를 전달하고 받을지에 대해 통일된 방식이 필요하다. 이러한 약속을 프로토콜이라고 칭한다.  💡 Network edge, coreNetwork edge 우리가 사용하는 컴퓨터나 애플리케이션, 그리고 서버 등은 네트워크 엣지이다. 네트워크상에서 가장자리에 위치한다.Network core 주로 라우터로 구성된다. 네트워크 상에서 중심에 위치하여, 가장자리에 있는 클라이언트와 서버 간의 연결을 구성한다.라우터는 다양한 기능이 있지만 ..
3. Process (2), (3)💡 동기식 입출력과 비동기식 입출력 부연설명입출력을 요청한 프로세스가 입출력이 끝날 때까지 대기상태일 경우 동기식 입출력입출력을 요청한 프로세스가 종료시까지 대기하지 않고 CPU가 새로운 instruction을 실행할 경우 비동기식 입출력 💡 ThreadA thread is a basic unit of CPU utilizationlighweight process 라고도 불림CPU를 수행하는 단위라고 할 수 있음프로세스 1개당 여러 실행단위를 가질 수 있음🎇Thread의 구성Program Counterregister setstack space🎇Thread가 동료 Thread와 공유하는 부분code sectiondata sectionOS Resources (각종 OS..
3. Process (1) ✨ 프로세스의 개념 프로세스는 실행 중인 프로그램을 의미한다. (Process is a program in execution) 프로그램이 정확하게 언제 시작하고 종료하는지를 나타내기 위해 사용 프로세스의 문맥(context) 현재 프로세스의 상태를 나타내는 모든 요소 CPU 수행 상태를 나타내는 하드웨어 문맥 Program Counter CPU안에서 어떤 프로세스인지 구분해 줌 프로세스 code의 진행 위치를 알려줌 각종 register 프로세스의 주소공간 code, data, stack 프로세스 관련 커널 자료구조 PCB (Process Control Block) Kernel stack 프로세스의 문맥이 필요한 이유 타임 쉐어링 때문에 다시 작업을 이어서 하려고 할 때 문맥을..
System Structure & Program Execution (2) ✨ 동기식 입출력과 비동기식 입출력 동기식 입출력 (Synchronous I/O) i/o 요청 후 입출력 작업이 완료된 후에야 제어가 사용자 프로그램에 넘어가며, 다음 작업을 수행할 수 있음 처리하는데 데이터가 꼭 필요할 때 사용 read 구현 방법1 i/o 끝날 때까지 CPU일 안 시키고 대기시킴 => 낭비 매 시점 하나의 I/O만 일어날 수 있음 구현 방법 2 i/o 가 완료될 때까지 해당 프로그램에게서 CPU를 뺴앗음 i/o 처리를 기다리는 줄에 그 프로그램을 줄 세움 비동기식 입출력 (Asynchronous I/O) i/o가 시작된 후 입출력 작업이 끝나기를 기다리지 않고 제어가 사용자 프로그램에 즉시 넘어가 다음 작업을 수..
Chapter 2. System Structure & Program Execution(1) 🎈 컴퓨터 시스템 구조 Computer CPU + Memory를 (좁은 의미의) 컴퓨터라고 한다. I/O device 나머지는 IO 디바이스로 이루어져 있다. Input은 입력, Output은 출력이다. CPU는 매 클럭 사이클 마다 인터럽션 interruption을 수행해 input을 읽어오고, output을 수행한다. CPU 매 클럭 사이클마다 메모리에서 기계어를 읽어다가 실행한다 CPU는 메모리하고만 소통한다 Timer time sharing을 구현하기 위한 하드웨어 interrupt 발생 시간 설정한다 프로세스가 혼자서 계속 CPU 점유하는 것을 막는다 Memory main memory : CPU의 작업공간..
Chapter 1. Introduction to Operation Systems 💡운영체제란 무엇인가? 운영체제(Operationg System, OS)는 여러 하드웨어들과 소프트웨어를 관리하는 통치자이다. 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행해 줌 좁은 의미의 운영체제 : 커널 (운영체제의 핵심 부분으로 메모리에 항상 상주) 넓은 의미의 운영체제 : 커널뿐만 아니라 각종 주변 시스템 유틸리티를 포함한 개념. 메모리에 상주하지 않는 개별적인 프로그램들을 전부 포함함. 기계에 SW가 돌아가고 있다 > 운영체제가 관리하고 있다고 보면 된다 💡 운영체제의 목적 컴퓨터 시스템을 편리하게 사용..
해당 글은 [혼자 공부하는 컴퓨터구조 + 운영체제] 도서의 내용을 정리한 글입니다. 💡 개념 요약 비트는 0과 1로 표현할 수 있는 가장 작은 정보 단위입니다. 바이트(byte), 킬로바이트(kB), 메가바이트(MB), 기가바이트(GB), 테라바이트(TB)는 비트보다 더 큰 정보 단위입니다. 이진법은 1을 넘어가는 시정에 자리 올림을 하여 0과 1만으로 수를 표현하는 방법입니다 이진법에서 음수는 2의 보수로 표현할 수 있습니다. 십육진법은 15를 넘어가는 시점에 자리 올림하여 수를 표현하는 방법입니다. 💡 문자 집합과 인코딩 문자 집합 : 컴퓨터가 인식하고 표현할 수 있는 문자의 모음입니다. 문자 인코딩 : 문자를 0과 1로 변환해야 비로소 컴퓨터가 이해할 수 있는데 이 변환 과정을 문자 인코딩이라고 합..
해당 글은 [혼자 공부하는 컴퓨터구조 + 운영체제] 도서의 내용을 정리한 글입니다. 💡 컴퓨터 구조를 이해해야 하는 이유 문제 해결 능력이 향상된다. 문법만으로는 알기 어려운 성능/용량/비용을 고려하며 개발할 수 있다. 문제 해결을 위한 다양한 실마리를 찾을 수 있다. 컴퓨터를 미지의 대상에서 분석의 대상으로 인식하게 된다. 💡 컴퓨터 구조의 큰 그림 컴퓨터가 이해하는 정보에는 데이터와 명령어가 있습니다. 💡 컴퓨터의 네 가지 핵심 부품 그림 메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장하는 부품입니다. CPU는 메모리에 저장된 명령어를 읽어 들이고, 해석하고, 실행하는 부품입니다. 보조기억장치는 전원이 꺼져도 보관할 프로그램을 저장하는 부품입니다. 입출력장치는 컴퓨터 외부에 연결되어 컴퓨터 ..
늘코딩
'👩‍💻 CS' 카테고리의 글 목록