CS

IT 지식/운영체제

인터럽트와 DirectX

인터럽트란?사전적 의미로는 '끼어들다', '중단시키다' 정도의 의미를 가진 말로 프로그램을 실행하는 도중에 예기치 않은 상황이 발생할 경우 현재 실행중인 작업을 중단하고 발생된 상황을 처리한 후 다시 실행중인 작업으로 복귀하는 것을 말한다. 인터럽트의 종류인터럽트의 종류는 외부 인터럽트, 내부 인터럽트, 소프트웨어 인터럽트로 나뉠 수 있다. 외부 인터럽트전원 이상 인터럽트(Power fall interrupt): 말 그대로 정전, 파워 이상 등기계 착오 인터럽트(Machine check Interrupt): CPU의 기능적인 오류외부 신호 인터럽트(External Interrupt)- 타이머에 의한 인터럽트: Preemptive 개념을 생각하면 된다. 자원이 할당된 시간이 다 끝난 경우- 키보드로 인터럽..

IT 지식/운영체제

컴퓨터의 구조 (H/W, Kernel mode, User mode)

컴퓨터는 3층집으로 되어 있다.컴퓨터는 3개 계층으로 구성되어 있다. → H/W, S/W(Kernel, User)H/W = PhysicalS/W = Logical ≒ VirtualCPU 64bit, OS 64bit = 64bit Platform운영체제(OS)는 소프트웨어다. → MS Word와 같다.OS는 위로는 Application을 서포트한다. (잘 작동하도록 도와줌)OS는 밑으로는 하드웨어를 제어/관리 한다.Interrupt = 방해(알람), 컴퓨터와 주변기기가 통신(I/O)을 할 때 마다 Interrupt가 발생한다.I/O(입출력) = Read(읽기), Write(쓰기) C언어 printf 함수 사용하여 Hello World 출력 시 순서 (OS 제어의 순서)printf 함수를 이용해서 API를 ..

IT 지식/CS 기초

비선형 자료구조 2진 트리

2진 트리(Heap)자료당 두 개의 위치정보(링크)를 이용해 셋을 하나로 묶는다.맨 꼭대기를 기준으로 왼쪽에는 작은 숫자, 오른쪽에는 큰 숫자 카드가 있다고 가정한다.생각해볼 문제: 여기에 5번이 있는지 알고 싶다 몇 번 비교하면 찾을 수 있을까? → 3회2진 트리 = Heap(힙) → 정보를 빠르게 나열하기가 굉장히 좋다.  파이썬 코드로 Heap 구현하기Heap(힙)은 최대/최소값을 찾는데 최적화된 자료구조힙은 기본적으로 완전 이진 트리 = 무조건 왼쪽 자식 노드부터 데이터 삽입힙은 데이터의 중복을 허용push → heappush (값 넣기)pop → heappop (값 빼기)최대 힙(Max Heap)최대 힙은 루트 노드가 가장 큰 값을 가지고, 부모 노드가 항상 자식 노드보다 값이 크거나 같다.최소..

IT 지식/CS 기초

선형 자료구조 Stack과 Queue

Stack(스택)1차원 선형 구조 → I/O 지점이 1개 뿐인 자료구조 → Stack Last In First Out 구조 (LIFO) → 후입선출, 김치냉장고 처음 넣은 것은 맨 아래 바닥에 깔린다.두 번째부터는 처음 넣은 것 위에 쌓인다.바닥에 있는 것을 꺼내려면 위에 쌓인 것들을 모두 치우는 수 밖에 없다.생각해볼 문제: 이런 구조는 왜 필요할까? → 뒤집기(순서 바꾸기), 되돌아가기(Ctrl + Z)Stack → Ctrl + Z  Queue(큐)I/O 지점이 양 끝단으로 나뉘어져 있다. → QueueFirst In First Out 구조 → 선입선출버스를 타기 위해 줄을 서는 것과 같다.은행에서 번호표 뽑은 순서로 기다리는 것과 같다.Enqueue → 큐에 뭔가를 집어넣는다.Dequeue → 큐에..

IT 지식/CS 기초

자료구조의 필요성 (자료를 정리하는 이유)

자료를 정리하는 이유좌측과 우측을 비교해보면 자료를 정리하는 이유를 명확히 알 수 있다.머리속에 기억하는 것이 중요한 것이 아니라, 필요할 때 빨리 찾아서 활용할 수 있는 것이 중요하다.잘 정리해놔야 원하는 시점에 원하는 정보를 빠르게 찾아서 활용할 수 있다.  어떻게 정리할 것인가? (1)효율 좋은 사람은 '정리'를 잘한다.지저분한 방을 깨끗이 정리하는 규칙이 알고리즘이다.일정 규칙으로 자료를 나열(혹은 정리)하는 것이 자료구조다.구조화된 자료에서 원하는 것을 빨리 찾아내는 방법은 알고리즘이다.  어떻게 정리할 것인가? (2)이름 순으로, 키 순으로 정렬(Sort)한다.분야(카테고리)를 나누고 성질이 비슷한 것들을 따로 모은다.필요하다면 '단위와 규격'을 만든다. (예: 1반, 2반)생각해볼 문제주민등..

IT 지식/CS 기초

API와 SDK

API와 SDKApplication Programming Interface → 함수 = 코드의 묶음 단위 = 어떤 기능을 코드로 제작Software Development Kit → 함수 모음함수는 호출하여 사용한다.함수와 함수 세트를 의미한다.공구와 (가정용)공구세트로 이해하면 쉽다.        참고https://www.inflearn.com/course/%EB%84%93%EA%B3%A0%EC%96%95%EA%B2%8C-%EC%BB%B4%EA%B3%B5-%EC%A0%84%EA%B3%B5%EC%9E%90

Security Engineer
'CS' 태그의 글 목록 (2 Page)