분류 전체보기
-
(4) 인터럽트CS 지식/○ OS(Operating System) 2021. 6. 15. 00:14
1. 인터럽트란? 1-1) 정의 프로그램을 실행하는 도중에 예기치 않은 상황이 발생환 경우 지금 실행중인 작업을 즉시 중단하고, 발생된 상황을 우선 처리한 후 실행중인 작업으로 복귀하여 계속 처리하는 것 1-2) 우선순위로 처리되는 일 1) 입출력 2) 우선순위 연산 등등.... 1-3) 인터럽트 종류 외부 인터럽트 [CPU 하드웨어 신호에 의해 발생] 전원 이상 인터럽트(Power fail interrupt) : 말그대로 정전, 파워 이상 등 기계 착오 인터럽트(Machine check interrupt) : CPU의 기능적인 오류 외부 신호 인터럽트(External interrupt) - 타이머에 의한 인터럽트 : Preemptive개념을 생각하면 된다. 자원이 할당된 시간이 다 끝난 경우 - 키보드..
-
(4) URI & 웹브라우저 요청 흐름 - URI, 웹브라우저 요청 흐름HTTP 웹/Http 웹 기본 2021. 6. 14. 14:39
1. URI 란? 1-1) 정의 a) 의미 Uniform Resource Identifier 라는 의미로 리소스를 식별하는 통합된 방법이라는 의미 Uniform : 리소스 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것(제한 없음) - URI로 식별할 수 있는 모든 정보를 리소스라고 함 ( file / html 등등... ) Identifier : 다른 항복과 구분하는 데 필요한 정보 b) URI와 하위 개념 URI는 URL / URN을 포함하는 개념 URL - Locator, 리소스가 있는 위치를 지정 - URI == URL 의 개념으로 봐도 됨 URN - Name, 리소스에 이름을 부여 - 이름만으로 리소스를 찾는 방법이 보편화 되지 않았음 1-2) URL / URN..
-
(3) 인터넷 통신 - PORT, DNSHTTP 웹/Http 웹 기본 2021. 6. 14. 11:15
1. Port 란? 1-1) 정의 한 IP에 여러 연결이 필요한 경우 사용하게 되는 것, 패킷이 Port로 구분 됨 받을 때와 전송할 때 마찬가지 > 한 IP 내에서 다음과 같이 포트 번호로 Application / 응용프로그램 별로 구분하여 패킷 접수/전송 가능 ( Port로 구분되는 적용 대상이 "패킷"인것이 중요! ) - IP는 출발 / 목적 IP 정보 가지고 있음 - TCP는 출발 / 목적 PORT 정보 가지고 있음 1-2) 주 정의된 PORT 0 ~ 65535 : 전체 할당 범위 0 ~ 1023 : 잘 알려진 포트, 사용하지 않는 것이 좋음 FTP - 20 ,21 TELNET - 23 HTTP - 80 HTTPS - 443 2. DNS 2-1) DNS 란? Domian Name Server 의 ..
-
(3) 프로세스 주소 공간CS 지식/○ OS(Operating System) 2021. 6. 13. 22:54
1. 프로세스 주소란? 1-1) 정의 프로그램이 CPU에 의해 실행되고 난 후 프로세스가 생성되고 메모리에 프로세스 주소 공간이 할당됨 > 프로세스 메모리 공간은 다음과 같이 이루어져 있음 1-2) 메모리 구성 코드 Segment : 프로그램 소스 코드 저장 데이터 Segment : 전역변수 저장 - 전역변수, static(Java/C) 로 할당되는 영역, 어디서든 접근 가능 - 프로그램 시작과 동시에 할당, 프로그램 종료되어야 메모리에서 소멸 - [예시▼] 더보기 #include int a = 10; // 데이터 영역에 할당 int b = 20; // 데이터 영역에 할당 int main() { ... return 0; } 위와 같은 코드에서 int형 변수 a, b는 프로그램 실행시 main 함수가 호출..
-
(2) 인터넷 통신 - IP / TCP,UDP / PORTHTTP 웹/Http 웹 기본 2021. 6. 13. 21:26
1. 인터넷 통신 복잡한 인터넷 망을 통해 두대의 컴퓨터가 연결됨 이러한 통신을 하기 위한 규약이 있고 이가 IP(Internet Protocol) 임 1-1) IP (internet protocol) 통신하기 위한 규약의 총칭 통신규약을 따르는 통신 과정은 다음의 일련의 process를 거친다 (a) 두대의 컴퓨터 모두 ip 주소가 있어야 함 (b) 클라이언트(computer 1) IP 패킷 이라는 통신 단위로 데이터 전달 > 다음과 같이 패킷에 대한 정보를 추가로 기술해주어야 함 > 노드를 연결하는 서버들 끼리 규약을 따르기 때문에 최종 서버로 전달 될 수 있음 (c) 서버(computer 2) 마찬가지로 답장 전달(반드시 응답 해야 함) 1-2) IP 프로토콜의 한계 비연결성 - 패킷을 받을 대상이..
-
(1) 웹 기본 - curriculumHTTP 웹/Http 웹 기본 2021. 6. 13. 17:22
1. 기본기가 중요한 이유 프레임 워크를 사용하면, http를 안다고 가정하고 기본을 모른채 기능위주의 개발을 하게 될 가능성이 높음 POST, PUT, http 상태 코드등... 에대한 고민 2. 강의 목표 HTTP 전체 흐름 이해 실무에 꼭 필요한 핵심 내용 예시 / 그림으로 쉬운 설명을 통한 이해 3. 강의 대상 모바일 앱 웹 프론트엔드 백엔드 4. 강의 흐름 인터넷 네트워크 - 복잡한 인터넷 망 - 프로토콜 계층 - TCP 3 way handshake - DNS URI web browser request - HTTP 메세지 전송 HTTP 기본 - HTTP 특징 - 무상태 - Stateless - HTTP 지속연결 - HTTP 메세지 구조 HTTP 메서드 - API URI 설계와 문제점, http ..
-
(2) 프로세스 & 스레드CS 지식/○ OS(Operating System) 2021. 6. 12. 23:05
1. 프로세스와 스레드 1-1) 정의 (a) 프로세스 : 메모리 상에서 실행중인 프로그램의 작업 (b) 스레드 : 프로세스 안에서 실행되는 여러 흐름의 단위 1-2) 기본 개념 (a) 프로세스-스레드 관계 기본적으로 프로세스마다 최소 1개의 스레드 보유 (메인 스레드 포함) == 하나의 프로세스가 생성될 때 기본적으로 하나의 스레드 같이 생성 (b) 프로세스의 특징 프로세스는 각각 별도의 주소 공간 할당, 서로 독립적이다 (완전 개별) Code : 코드 자체를 담고 있는 메모리 영역(프로그램 명령) Data : 전역변수, 정적변수, 배열 등 (초기화 된 데이터) Heap : 동적 할당시 사용 (new(), mallock()) Stack : 지역변수, 매개변수, 리턴 값 (임시 메모리 영역) > 프로세스의..
-
생활코딩( SQL join ) (5) - EXCLUSIVE JOINBackend/JOIN심화 2021. 6. 10. 19:37
1. DataSet 2. Exclusive Join 2-1) LEFT JOIN과 비교 LEFT JOIN, RIGHT IS NULL 과 동일한 결과 순수 A에 해당하는 것만 JOIN하게 됨 2-2) EXCLUSIVE JOIN LEFT JOIN + WHERE IS NULL : A, B 테이블 중 A에만 있는 데이터를 원할 때 RIGHT JOIN + WHERE IS NULL : A, B 테이블 중 B에만 있는 데이터를 원할 때 Syntax SELECT FROM LEFT JOIN ON [LEFT JOIN tbl_c .... and so on] 1) A-B 순서로 하고, INNER는 A/B 둘다 적용되므로, 순서는 상관없음 2) ON : Join을 할 index등의 condition을 넣어줌 3) Where에서는..
-
(1) 운영체제란?CS 지식/○ OS(Operating System) 2021. 6. 10. 18:15
1. 운영체제란? 1-1) 정의 하드웨어를 관리하고, 응용프로그램과 하드웨어 사이에서 인터페이스 역할을 하며, 시스템의 자원을 관리하고 동작을 제어하는 시스템 소프트웨어 ※ 소프트웨어 - 응용소프트웨어 = 시스템 소프트웨어 + 컴파일러 2. 운영체제의 큰 틀 2-1) 프로세스 관리 프로세스, 쓰레드 스케쥴링 동기화 IPC 통신 2-2) 저장장치 관리 메모리 관리 가상 메모리 파일 시스템 2-3) 네트워킹 TCP/IP 기타 프로토콜 2-4) 사용자 관리 계정 관리 접근권한 관리 2-5) 디바이스 드라이버 순차접근 장치 임의접근 장치 네트워크 장치 3. 프로세스 관리 3-1) 정의 운영체제에서 작동하는 응용 프로그램(소프트웨어)들을 관리하는 기능 > 즉 CPU를 관리하는 것 어떤 프로그램/프로세스가 현재 C..
-
(5) 패리티 비트 & 해밍 코드CS 지식/○ CA(Computer Architecture) 2021. 6. 9. 21:47
1. 패리티 비트란? 1-1) 정의 정보 전달 과정에서 오류가 생겼는지 검사하기 위해 추가하는 비트 > 전송하고자 하는 데이터의 "각 문자"에 지정위치에 1 비트를 더하여 전송 > 비트를 더해주는 자리는 미리 약속 1, 2, 4, 8 ... 2^n 자리수를 패리티 비트 자리로 지정 데이터는 그 빈자리 사이에 배치 전송하고자 하는 대상이 bit으로 변환될 수 있을 것 (string, JSON ....등) ■ 패리티 비트 구하는 공식 2^p >= d + p + 1 where p : 패리티 비트의 수 d : 데이터 비트의 수 ■ 패리티 비트 추가 1) 패리티 비트 최소 개수를 구함 2) 자리수에 패리티 비트 배치 3) 나머지 자리에 원본 데이터 비트 배치 1-2) 패리티 비트 타입 전체 비트에서 (짝수, 홀수..