분류 전체보기 73

[CS 스터디] IPC (Inter Process Communication)

IPC (Inter Process Communication) 서로 독립된 프로세스들 간의 통신을 가능하게 함 통신이 가능하다 → 데이터를 주고 받을 수 있다 → 공유하는 메모리가 필요하다 → IPC 활용 How? → 커널이 제공하는 IPC 설비를 이용 (커널: 운영체제의 핵심적인 부분으로, 다른 모든 부분에 여러 기본적인 서비스를 제공) 프로세스간 데이터 동기화 및 보호를 위해 세마포어와 뮤텍스 사용 세마포어와 뮤텍스 세마포어: 공유된 자원의 데이터 혹은 임계영역(Critical Section) 등에 여러 프로세스 혹은 쓰레드가 접근하는 것을 막아줌(즉, 동기화 대상이 하나 이상) 임계영역(Critical Section): 다중 프로그래밍 운영체제에서 여러 프로세스가 데이터를 공유하면서 수행될 때 각 프..

Etc./CS 2022.05.20

03. DFS/BFS

그래프 탐색 알고리즘: DFS/BFS 탐색(Search): 많은 양의 데이터 중 필요한 데이터를 찾는 과정 스택 자료구조 먼저 들어온 데이터가 나중에 나가는 형식(후입선출, LIFO)의 자료구조 입구와 출구가 동일한 형태로 스택을 시각화 가능 (ex. 박스 쌓기) 파이썬에서 스택 자료구조를 이용하려면 리스트 자료형을 이용하면 됨 가장 오른쪽에 원소를 삽입하는 append()와 가장 오른쪽에서 원소를 꺼내는 pop()을 지원 append()와 pop()의 시간복잡도: O(1) → 스택 자료구조로 적합 스택 구현 예제 stack = [] stack.append(5) stack.append(2) stack.append(3) stack.append(7) stack.pop() stack.append(1) stac..

[백준(BOJ) / python] 1436 - 영화감독 숌

영화감독 숌 문제 분류 구현 레벨 실버 V 풀이 날짜 2022/05/13 문제 개요 문제 💡 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타워즈를 만들 때, 스타워즈 1, 스타워즈 2, 스타워즈 3, 스타워즈 4, 스타워즈 5, 스타워즈 6과 같이 이름을 지었고, 피터 잭슨은 반지의 제왕을 만들 때, 반지의 제왕 1, 반지의 제왕 2, 반지의 제왕 3과 같이 영화 제목을 지었다. 하지만 숌은 자신이 조지 루카스와 피터 잭슨을 뛰어넘는다는 것을 보여주기 위해서 영화 제목을 좀 다르게 만들기로 했다. 종말의 숫자란 어떤 수에 6이 적어도 3개이상 연속으로 들어가는..

Algorithm/백준 2022.05.13

[네트워크] 네트워크 모델

네트워크 모델의 종류 네트워크 계층 모델 TCP/IP 모델 2. OSI 7계층 : 데이터를 주고받을 때 데이터 자체의 흐름을 각 구간별로 나누어둔 것 ISO에서 표준으로 지정한 모델 자세히 살펴볼 프로토콜: 이더넷, IP, ICMP, ARP, TCP, UDP, HTTP TCP/IP 모델과 OSI 7계층 모델 비교 기준 TCP/ID OSI 7계층 계층의 수 4계층 7계층 분류 기준 프로토콜 기반 역할 기반 특징 데이터 전송기술 특화 통신 전반에 대한 표준 공통점: 계층적 네트워크 모델, 계층간 역할 정의 패킷 패킷이란? 네트워크를 통해 전달되는 데이터를 통칭하는 말로 네트워크에서 전달하는 데이터의 형식화된 블록 패킷의 구조: 제어정보 + 사용자 데이터(페이로드) 헤더 페이로드: 실질적으로 보내고자 하는 데..

Etc./CS 2022.05.12

[네트워크] Wireshark를 이용하여 사용된 프로토콜 확인하기

실습(wireshark) Wireshark란? 컴퓨터로 네트워크 통신을 할 때 네트워크 프로토콜을 캡쳐하여 어떤 프로토콜이 사용되었는지 (보냈는지, 받았는지) 확인할 수 있게 하는 도구 - https://www.wireshark.org/ 에서 운영체제에 맞게 다운로드 연결 후 Wi-Fi: en0(로컬) 영역을 눌러 실행 - http를 검색 설정 한 후, 웹 사이트에 접속하여 확인 (ex. 교보문고 사이트) - HTTP/1.1 200 OK (text/html) 더블클릭해서 세부내용 확인 가능 Ethernet: 가까운 곳 통신할 때 특정 컴퓨터 찾아가는 역할 IPv4: 멀리 떨어져있는 곳과 연결할 때 사용하는 프로토콜 TCP: 인터넷 브라우저와 프로그램을 연결 내용 참고. https://www.youtube..

Etc./CS 2022.05.10

[네트워크] tracert 맥북 오류 해결 방법, traceroute 의미

실습**(tracert)** tracert 명령어를 이용하여 여러분의 컴퓨터가 어떻게 통신하는지 간단히 살펴보는 실습 진행 맥북 tracert command not found 해결 방법 tracert 대신 traceroute를 사용한다 → 내 컴퓨터에서 google이 있는 곳까지 가기 위해서 거쳐간 네트워크 LAN 대역을 표시한다 * * *: IP 주소 공개 안 한 경우 가장 가까운 192.168.0.1 : 사무실(공간)의 ipTIME 내용 출처. https://www.youtube.com/watch?v=paJf7JbBWqY&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi&index=2&t=7s

Etc./CS 2022.05.09

[네트워크] 네트워크란 무엇인가

네트워크란 노드들이 데이터를 공유할 수 있게 하는 디지털 전기통신망의 하나 노드: 네트워크에 속한 컴퓨터 또는 통신장비 cf) 인터넷은 전세계를 연결하는 네트워크 중 하나 네트워크의 분류 크기에 따른 분류 LAN (Local Area Network): 가까운 지역을 하나로 묶은 네트워크 WAN (Wide Area Network): 멀리 있는 지역을 한 데 묶은 네트워크. 가까운 지역끼리 묶인 LAN과 LAN을 다시 하나로 묶은 것 MAN: Metroplitian Area Network 기타: VLAN, CAN, PAN 연결 형태에 따른 분류 Star형: 중앙 장비에 모든 노드가 연결된 형태 Mesh형: 여러 노드들이 서로 그물처럼 연결된 형태 Tree형: 나뭇가지처럼 계층 구조로 연결된 형태 기타: 링형..

Etc./CS 2022.05.08

[CS 스터디] 고정 소수점 & 부동 소수점

고정 소수점 & 부동 소수점 컴퓨터의 실수 표현 방식 고정 소수점 부동 소수점 1. 고정 소수점(Fixed Point) 소주점이 찍힐 위치를 미리 정해두고 소수를 표현하는 방식 (정수 + 소수) ex. -3.1415 ⇒ 부호(-), 정수부(3), 소수부(0.1415)로 구성 장점 : 실수를 정수부와 소수부로 표현하여 단순하다. 단점 : 표현의 범위가 너무 적어서 활용하기 힘들다. (정수부는 15bit, 소수부는 16bit) 2. 부동 소수점(Floating Point) 지수의 값에 따라 소수점이 움직이는 방식을 활용한 실수 표현 방식 실수를 가수부 + 지수부로 표현 가수: 실수의 실제값 표현 지수: 크기 표현. 가수의 어디쯤에 소수점이 있는지 나타냄 📌 수식 $±(1.가수부)×2지수부-127$ 장점 : ..

Etc./CS 2022.05.07

[CS 스터디] 캐시 메모리(Cache Memory)

캐시 메모리란 속도가 빠른 장치와 느린 장치에서 속도 차이에 따른 병목 현상을 줄이기 위한 메모리 💡 병목(Bottleneck) 현상이란 : 담을 수 있는 데이터의 양은 적으나 한번에 많은 양의 데이터가 유입됨으로써 컴퓨터가 느려지는 현상 사용 목적: 속도 향상 CPU가 저장된 데이터를 읽어올 때, 자주 사용하는 데이터를 주기억장치 대신 캐시 메모리에 저장하는 것으로 속도 향상 단점: 적은 용량. 비쌈 캐시 메모리 크기가 작은 이유는, SRAM 가격이 매우 비쌈 CPU에는 캐시메모리 2~3개 사용 (L1 ~ L3 캐시 메모리) 속도, 크기에 따라 분류되며 L1에 먼저 접근 후, 데이터를 찾지 못하면 그 다음 캐시 메모리로 이동 L1 : CPU 내부에 존재. 속도를 위해 I-Cache와 D-Cache로 나..

Etc./CS 2022.05.06

[Django] Django REST Framework JWT Import Error 해결 방법

ImportError: Could not import 'rest_framework_jwt.authentication.JSONWebTokenAuthentication' for API setting 'DEFAULT_AUTHENTICATION_CLASSES'. ImportError: cannot import name 'smart_text' from 'django.utils.encoding' DRF 로그인 기능 구현을 하던 중 위와 같은 오류가 발생했다. 해당 오류에 대한 여러 답변이 있었지만 나에게는 해당되지 않아 찾아보던 중 한 글을 보게 되엇다. https://www.inflearn.com/questions/482303 rest_framework_jwt를 임포트할 수 없다는 에러가 발생합니다 - 인프런 |..

Framework/Django 2022.03.27