Recent posts
-
카테고리 없음
[고성능파이썬] 사전(dictionary) 과 셋(set)
🔊 해당 포스팅은 고성능 파이썬 2판 책 서적을 읽고 개인적인 학습 목적 하에 작성된 글입니다. 포스팅에서 사용되는 자료들은 책의 내용을 참고하되 본인이 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 파이썬의 자료구조 중 정렬되지 않은 데이터를 탐색하는 문제에 적합한 dictionary(이하 사전)과 set(이하 셋)에 대한 내용을 공부해보면서 알아두면 좋을 내용들에 대해 정리해보고자 한다. 1. 조회도 한 번에, 삽입도 한 번에! 셋과 사전은 특정 데이터를 고유하게 참조할 수 있는 별도 객체가 있는 상황에서 가장 이상적인 자료구조이다. 여기서 '고유하게 참조할 수 있는 별도 객체'란, 'key : value' 로 이루어진 자료구조 중 'key'에 해당하는 값이다. 이 key 라는 참조하는 객체는 ..
-
Computer Science
[Network] L4 계층의 TCP/UDP 그리고 웹의 기술
🔊 해당 포스팅은 인프런 강의 널널한개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 내용을 공부하면서 배운 내용을 저만의 방식으로 재정리하고자 하는 목적 하에 작성되는 포스팅입니다. 아래 포스팅에서 사용되는 모든 자료는 제가 직접 재구성했음을 알립니다. 이번 포스팅에서는 OSI 7 계층 중 전송 계층에 해당하는 L4 계층의 TCP/UDP에 대해 알아보고, 웹(Web)이라는 기술이 역사적으로 어떻게 발전해왔는지 살펴보면서 핵심 요소들을 이해해보자. 1. TCP는 논리적 연결이다 TCP는 물리적인 것이 아닌 논리적 연결이다. 물리적인 연결은 L2 스위치처럼 말 그대로 진짜 물리적인 회선을 가지고 장치 간에 진짜 연결을 하는 것이다. 하지만 TCP는 이러한 물리적 연결이 아닌 마치 가상화된 논리적 연결이다..
-
Computer Science
[Network] OSI의 네트워크(L3) 계층에 대해 배워보자
🔊 해당 포스팅은 인프런 강의 널널한개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 내용을 공부하면서 배운 내용을 저만의 방식으로 재정리하고자 하는 목적 하에 작성되는 포스팅입니다. 아래 포스팅에서 사용되는 모든 자료는 제가 직접 재구성했음을 알립니다. 이번 포스팅에서는 OSI 7 계층 중 네트워크(L3) 계층에 해당하는 내용에 대해 알아보도록 하자. 1. L3 계층 구현체인 인터넷의 식별자: IP 주소 L3 계층인 네트워크 계층에서 구현체는 인터넷이었고, 그 인터넷에 대한 식별자는 IP 주소라고 이전 포스팅에서 배웠다. 그러면 IP 주소는 어떻게 생겼을까? 여기에서는 IP 주소 종류 중 IPv4 주소에 대해서만 다룬다. IPv4 주소는 총 32비트로 8비트가 4개로 구성되어 있다. 하나당 8비트 이..
-
Computer Science
[Network] 네트워크 용어의 정리와 OSI의 데이터링크(L2) 계층
🔊 해당 포스팅은 인프런 강의 널널한개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 내용을 공부하면서 배운 내용을 저만의 방식으로 재정리하고자 하는 목적 하에 작성되는 포스팅입니다. 아래 포스팅에서 사용되는 모든 자료는 제가 직접 재구성했음을 알립니다. 이번 포스팅에서는 네트워크를 이해하기 위해 사전에 학습해야 할 관련 용어에 대한 정리와 OSI 계층 기준의 L2 Layer인 데이터링크 계층에서 알아두어야 할 개념에 대해 살펴보자. OSI 계층에 대해서는 예전 포스팅을 참조해보자. 1. OSI 7 Layer 개념에 대응되는 구현체(Implementation) OSI 7 계층은 어떠한 실체가 있는 구현체가 아닌 추상화된 개념에 해당한다. 예를 들어서, 프로그래밍 언어라는 것은 추상화된 개념이고 어Pyt..
-
Computer Science
[CS] CPU 스케쥴링, Process 간 통신방법, 가상 메모리(VMS)
🔊 해당 포스팅은 YouTube 채널 널널한 개발자님이 제공하시는 무료 강의 영상인 운영체제와 시스템 프로그래밍 영상을 보고 개인적인 정리 목적하에 작성되었습니다. 하단에 사용된 자료는 필자가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 간략하게 CPU 스케쥴링과 프로세스들 간에 통신하는 여러가지 방법, 그리고 가장 중요하다고 할 수 있는 가상 메모리 공간(VMS, Virtual Memory Space)에 대해 알아보도록 하자. 1. CPU 스케쥴링의 주체는 OS다 저번 포스팅에서 프로세스에 대해 다루면서 운영체제(이하 OS)는 프로세스를 단위로 하여 파일 또는 전산자원(CPU, RAM 등)에 대한 접근 제어를 수행한다고 했다. 여기서 전산자원에 대한 접근 제어라는 것이 바로 "어떤 프로세스는 C..