본문 바로가기

CS43

[Network] 네트워크 계층 해당 게시글은 '면접을 위한 CS 전공지식 노트' 도서를 학습한 후 개인적으로 정리한 내용으로 구성함을 밝힙니다. 1. 계층 구조 OSI 7계층 vs. TCP/IP 계층 2. TCP/IP 4계층2.1. 응용 계층 (Application Layer)응용 프로그램이 사용되는 프로토콜 계층웹 서비스, 이메일 등의 서비스를 사용자에게 제공 FTP 장치와 장치 간의 파일 전송 프로토콜 SSH 보안이 없는 네트워크에서 네트워크 서비스를 안전하게 운영하기 위한 암호화 네트워크 프로토콜HTTP World Wide Web을 위한 데이터 통신 기초SMTP 전자 메일 전송을 위한 인터넷 표준 통신 프로토콜DNS 도메인 이름과 IP 주소를 매핑해주는 서버 2.2. 전송 계층 (Transport Layer.. 2025. 4. 16.
[Network] 네트워크 기초 해당 게시글은 '면접을 위한 CS 전공지식 노트' 도서를 학습한 후 개인적으로 정리한 내용으로 구성함을 밝힙니다. 네트워크컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망노드(node)와 링크(link)가 서로 연결되어 있으며, 리소스를 공유하는 집합노드 : 서버, 라우터, 스위치 등의 네트워크 장치링크 : 유선 또는 무선 1. Throughput과 Latency좋은 네트워크의 조건많은 처리량을 처리 가능지연 시간이 짧음장애 빈도가 적음보안성이 좋음 처리량 (Throughput)정의링크 내에서 성공적으로 전달된 데이터의 양처리량 vs. 트래픽트래픽 : 특정 시점에 링크 내에 흐르는 데이터의 양트래픽이 많아졌다 = 흐르는 데이터가 많아졌다처리량이 많아졌다 = 처리되는 트래픽이 많아졌다단위bps (.. 2025. 4. 16.
[Ruby] Ruby 20분 가이드 * 해당 게시글은 Ruby 공식 문서를 바탕으로 학습한 후 개인적으로 정리한 내용을 담고 있습니다.https://www.ruby-lang.org/ko/documentation/quickstart/ Ruby 20분 가이드소개 이 문서는 20분 정도면 따라 해볼 수 있는 간단한 Ruby 튜토리얼입니다. 이 튜토리얼을 따라 하기 위해서는 컴퓨터에 Ruby가 설치되어 있어야 합니다. (아직 Ruby가 설치되어 있지 않다면, 시작www.ruby-lang.org 1. 출력Ruby는 데이터를 화면에 출력할 때 puts라는 메서드를 이용한다. irb(main):002:0> puts "Hello World"Hello World=> nil  2. 계산간단한 Ruby의 수 계산 연산자는 아래와 같다.특히 제곱근을 구할 때 .. 2025. 2. 1.
[Ruby] Ruby에 대해서 * 해당 게시글은 Ruby 공식 문서를 바탕으로 학습한 후 개인적으로 정리한 내용을 담고 있습니다.https://www.ruby-lang.org/ko/about/#fn2 Ruby에 대해서Ruby가 왜 인기 있을까요? Ruby의 팬들은 아름답고 기교가 뛰어난 언어이기 때문이라고 말합니다. 하지만 이 말로는 부족하지요. 어떤 점이 Ruby를 이처럼 매력적인 언어로 만드는 것일까요? Ruby를www.ruby-lang.org  Ruby에 대해서공식 문서에 따르면 Ruby의 팬들은 아름답고 기교가 뛰어난 언어이기 때문에 Ruby가 인기있다고 말한다고 한다. 자고로 프로그래밍 언어의 공식 문서들은 매우 딱딱하고 노잼인 것이 국룰인데, 자칭 프로그래머의 단짝 친구 Ruby의 공식 문서는 아주 사심이 가득해보인다ㅋㅋ .. 2025. 2. 1.
[이취코] Chapter 04. 구현 * 해당 게시글은 [이것이 취업을 위한 코딩테스트다, 나동빈] 교재를 학습하고 정리한 글입니다. 1. 구현 유형 완전 탐색시뮬레이션 모든 경우의 수를 전부 다 계산하는 방식 문제에서 제시한 알고리즘을 한 단계씩 차례대로 수행하는 방식 2. 구현 시 고려해야 할 제약 사항2.1. 자료형의 범위정수형자료형 크기자료형 범위int4byte-2,147,483,648 ~ 2,147,483,647long long8byte-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 2.2. 채점 시스템대부분의 코딩 테스트 환경에서는 아래의 채점 시스템 환경이 주어진다.시간 제한 : 1초메모리 제한 : 128MB 3. 예제#include using namespace std;.. 2025. 1. 6.
[이취코] Chapter 03. 그리디 * 해당 게시글은 [이것이 취업을 위한 코딩테스트다, 나동빈] 교재를 학습하고 정리한 글입니다. 1. 그리디 알고리즘현재 상황에서 지금 가장 좋은 것을 골라나가는 방법현재의 선택이 나중에 미칠 영향은 고려하지 않음예) 다익스트라 알고리즘, 크루스칼 알고리즘 2. 언제 사용할까?문제를 보고 현재 상황에서 가장 좋아보이는 것을 선택할 때 문제가 풀릴 지를 파악할 수 있어야 함그리디로 판단할 때는 정당한지(= 다른 방법이 불가능한 지) 검토할 수 있어야 함 '가장 큰 순서대로', '가장 작은 순서대로' 와 같은 기준을 알게 모르게 제시해주는 편정렬 알고리즘과 함께 결함된 문제가 많음 3. 예제#include using namespace std;int coins[4] = {500, 100, 50, 10};int.. 2024. 10. 31.
[Connected Car & AWS] IOManager로 LED, 피에조 부저 조작 1. Vehicle.pyimport jsonfrom random import randintfrom datetime import datetimeclass Vehicle: def __init__(self): self.vin = "1HGBH41JXMN109186" self.date = datetime.now().strftime("%Y/%m/%d, %H:%M:%S") self.vehiclespeed = randint(0,160) self.fuelstatus = randint(0,100) . . . . self.airbags = {"driverairbag": "active", "pas.. 2024. 4. 20.
[Connected Car & AWS] Raspberry-pi 4 환경 설정 - 라이브러리, 브레드 보드 1. 라이브러리 다운로드 1-1. Python 1-1-1. Python 버전 확인 python --version // 3.5 이상이면 OK sudo apt-get install python3 // 다운로드 이력 없는 경우만 1-1-2. pip 버전 확인 pip3 --version sudo apt-get install python3-pip // 다운로드 이력 없는 경우만 이후 sudo apt-get update, sudo apt-get upgrade 한번씩 해준다 1-2. Cmake sudo apt-get install cmake 1-3. libssl sudo apt-get install libssl-dev 1-4. Git git --version sudo apt-get install git // 다운로드.. 2024. 4. 12.
[Connected Car & AWS] Raspberry-pi 4 환경 설정 - OS & VNC Raspberry-pi 4의 환경을 설정해볼 것이다. 1. Raspberry-pi Imager를 이용한 OS 다운로드 1-1. Raspberry-pi Imager 다운로드 해당 사이트에서 본인 PC 운영체제에 맞는 Imager를 다운로드한다. 나는 Windows용을 받았다. 1-2. 저장소 선택 다운로드 후 다음과 같은 Imager 화면이 보일 것이다. 라즈베리파이 SD카드를 PC에 연결한 후, [저장소 클릭]을 통해 선택해준다. 1-3. Raspberry-pi OS 다운로드 [운영체제 선택] 클릭 후, 원하는 OS를 다운받는다. 나는 64bit 짜리 OS를 선택했다. 1-4. 커스터마이징 설정 OS 선택 후 [다음]을 누르면 설정 편집기를 열 수 있다. [설정 편집하기] 선택 후, 각자 환경에 맞게 설.. 2024. 4. 8.