TCP/IP 프로토콜네트워크는 서로 다른 기종의 컴퓨터로 구성되어 있어 각 네트워크 간에 공통으로 사용할 수 있는 프로토콜의 필요성 대두 → 인터넷에서 컴퓨터 간의 통신이 가능하도록 표준화한 통신규약인 TCP/IP 채택TCP/IP = 전송 제어 프로토콜(TCP) + 인터넷 프로토콜(IP)인터넷에서 사용하는 응용 프로그램은 대부분 RCP/IP 프로토콜을 이용하여 데이터를 교환계층OSI 참조 모델 7계층TCP/IP 프로토콜 계층응용 (Application)응용 계층(FTP, 텔넷, SMTP, DNS, DHCP)표현 (Presentation)세션 (Session)전송 (Transport)전송 계층(TCP, UDP)네트워크 (Network)네트워크 계층(IP, ARP, ICMP, IGMP)데이터링크 (Data ..
BURROW
CPU & 마이크로프로세서마이크로프로세서컴퓨터에서 명령을 수행하고 데이터를 처리하는 CPU를 집적회로의 칩 형태로 만든 것폰 노이만 컴퓨터 구조프로그램 내장 방식데이터와 명령어가 주기억장치에 저장되어 있다가 버스를 통해서 CPU로 전달CPU는 전달되어 온 명령어를 이용하여 데이터를 사용자가 원하는 형태로 처리결과는 다시 데이터 버스를 통해서 주기억장치 RAM으로 보냄머신 사이클프로그램을 구성하는 명령어는 CPU에서 4단계의 과정을 통해서 수행 → 머신 사이클① 인출(Fetch) 사이클: 필요한 명령어를 주기억장치에서 불러오는 사이클② 해독(Decode) 사이클: 호출된 명령어를 해석하는 사이클③ 실행(Execute) 사이클: 해석된 명령어를 산술논리연산장치를 통해 실행④ 저장(Store) 사이클: 수행결..
큐삽입과 삭제가 양 끝에서 각각 수행되는 자료구조일상생활의 은행, 병원 등에서 번호표를 이용한 줄서기가 대표적인 큐선입 선출(FIFO) 원칙 하에 item의 삽입과 삭제 수행삭제는 전단, 삽입은 후단큐 ADT데이터: FIFO의 접근 방법을 유지하는 항목들의 모음Queue(): 비어 있는 새로운 큐 생성isEmpty(): 큐가 비어있으면 True, 아니면 Falseenqueue(x): 항목 x를 큐의 맨 뒤에 추가dequeue(): 큐의 맨 앞에 있는 항목을 꺼내 반환peek(): 큐의 맨 앞에 있는 항목을 삭제하지 않고 반환size(): 큐의 모든 항목들의 개수를 반환clear(): 큐를 공백상태로 만듦큐의 응용CPU의 태스크 스케줄링네트워크 프린터실시간 시스템의 인터럽트 처리다양한 이벤트 구동 방식 컴..
VS Code C++ extension 설치MinGW-w64 toolchain 설치 MSYS2Software Distribution and Building Platform for Windowswww.msys2.orgMSYS2 웹사이트에서 설치 프로그램을 다운로드설치 후 MSYS2 터미널에서 아래 명령어로 MinGW-w64 toolchain 설치pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchainWindows 환경 변수 PATH에 MinGW-w64의 bin 폴더 경로 추가tasks.json{ "version": "2.0.0", "tasks": [ { "type": "cppbuild", "..
행렬행렬(Matrix): A = [aᵢⱼ]n, m이 양의 정수일 때 n행, m열로 나열된 실수의 2차원 배열가로줄을 행(Row), 세로줄을 열(Column)행 크기와 열 크기 → 행렬의 크기aᵢⱼ: 행렬 A의 i행, j열 원소행렬의 연산행렬의 덧셈과 뺄셈두 행렬 A, B에서 같은 자리에 있는 원소들끼리 더하거나 빼는 연산두 행렬의 크기가 같아야만 연산 가능(두 행렬의 행과 열의 크기가 각각 같음)스칼라곱kA = Ak = [kaᵢⱼ]행렬 A에 실수 k를 곱하는 연산행렬의 각 원소마다 그 실수 값을 곱함행렬의 곱셈n × m 행렬 A와 r × s 행렬 B가 있고 m = r 일 때, n × s 행렬 A·B = [cᵢⱼ]행렬 A의 i번째 행과 행렬 B의 j번째 열이 서로 대응하여 연산되기 때문에 행렬 A의 열 크..
주소사상사용자 프로그램을 여러 개의 block으로 분할필요한 block들만 실행시키고자 할 때 메모리에 적재나머지 block들은 swap device에 존재연속할당Continuous Allocation상대 주소: 프로그램의 시작 주소를 0으로 가정한 주소재배치(Relocation): 메모리 할당 후, 할당된 주소에 따라 상대 주소들을 조정하는 작업비연속할당Non-continuous Allocation가상 주소: 논리 주소, 연속된 메모리 할당을 가정한 주소실제 주소: 실제 메모리에 적재된 주소주소 매핑: 가상 주소 → 실제 주소사용자/프로세스는 실행 프로그램 전체가 메모리에 연속적으로 적재되었다고 가정하고 실행할 수 있음블록 매핑사용자 프로그램을 block 단위로 분할/관리가상주소: v = (b, d)b..