목록lecture (31)
happy coding
운영체제 이전 컴퓨터시스템에서 하드웨어가 어떻게 동작하는지 컴퓨터 시스템 구조 I/O device 실제 device와 local buffer사이 발생 output, input 역할 모두 수행하는 disk device controller > hardware IO device를 전담하는 작은 cpu IO가 끝난 경우 interrupt로 cpu에 그 사실을 알림 local buffer IO device에 있는 작은 작업 공간, device controller가 가짐 > data register memory memory controller DMA controller 직접 메모리 접근 컨트롤러 io 장치가 너무 인터럽트를 많이 거니까, cpu는 자기 일을 하도록 하고, 사이에 dma가 io 의 내용을 메모리에 미..
운영체제 정의 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 협의의 운영체제(커널) - 좁은 의미 : 운영체제의 핵심 부분, 메모리에 상주하는 부분 광의의 운영체제 - 넓은 의미 : 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영체제 목적 자원을 효율적으로 관리 자원 : 프로세서, 기억 장치, 입출력 장치 사용자 및 운영체제 자신의 보호 효율성, 형평성 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 제공 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행 동시 사용자/프로그램들이 동시에 실행되는 듯한 운영체제 분류 동시 작업 가능 여부 단일 작업(single tasking) 한 번에 하나의 작업만 처리 다중 작업(multi tas..
무선(Wireless) LAN 앞에서 배운 것처럼 무선 LAN에는 WLAN, Wi-Fi, IEEE 802.11 등 여러 종류가 있다. 대역폭은 1 or 2 Mbps이고, 물리적 매체에는 1. 확산 스펙트럼(spread spectrum) radio 2. 발산 적외선(diffused infrared) 이 있다. 확산 스펙트럼에서, 나라마다 다르지만 초창기에는 2.4GHz를 사용하였지만, 공용 주파수의 hub 라이센스 없이 5GHz를 사용하는 경우가 늘어나고 있다. 고주파는 통신속도가 빠르기 때문이다. 802.11 LAN architecture 무선랜에는 Ad-Hoc Mode와 Infrastructure mode라는 2가지 모드가 존재하는데, 먼저 infrastructure mode 란 Access Point..
DHCP (Dynamic Host Configuration Protocol) DHCP 는 ARP 와 같이 왔다갔다 동작하는 프로토콜이다. D의 Dynamic은 스스로 IP 주소를 자동 구성하기 때문에, 붙였다. 이 프로토콜의 구성은 주소인데, 이 IP 주소는 네트워크의 구소를 반영해야 하기 때문에, 같은 네트워크에 있는 다른 호스트들의 주소와 앞부분이 같아야 한다. IP 주소 이외에도 구성 정보인 default router 와 name server 이다. 여기서 name server는 도메인 이름과 IP의 상호변환을 가능하게 해주는 서버 이다. DHCP 동작 DHCP의 서버는 이용가능한 주소들의 Pool을 관리하고, 클라이언트의 요청에 대해 구성 정보를 제공하며, address lease 또한 가능하다...
프로토콜(protocol) 프로토콜이란 통신에 사용되는 약속으로 정의할 수 있는데, 약속이기에 반드시 대칭 관계를 가져야 한다. > 양쪽이 같아야 한다. 다양한 컴퓨터통신 시스템과 응용이 생겨나면서 프로토콜이 복잡해져갔고, 해석이 불명확해졌다. 이는 프로토콜을 변경 하는 등의 관리에 대해 어려움을 야기했고, 이는 새로운 프로토콜이 필요할 때마다 반복되어갔다. 이를 지나오게 되면서 복잡성을 해결하는 구조적인 기법이 필요해졌는데, "계층화"하는 방법으로 해결하게 되었다. 계층화 (Layering) 먼저, 추상화(abstractions)란, 복잡한 내용과 문제를 숨겨 문제를 단순화하는 것이다. 이 추상화된 문제와 내용을 해결하는 방법은 추상화를 반복적으로 적용하는 것이다. 추상화를 이용해서 복잡한 문제를 한번..
heap은 binary tree의 일종이다. HEAP 1. 최대 힙 >> 부모 노드는 자식 노드보다 작지만 않으면 된다. + 완전이진트리이다. 최대 트리(Max Tree)는 각 노드의 키(Key)값이 (자식 노드가 있다면) 그 자식의 키(Key)값보다 작지 않은(=크거나 같은) 트리이다. 최대 힙(Max Heap)은 최대 트리(Max Tree)이면서 완전 이진 트리(Complete Binary Tree)이다. 2. 최소 힙 >> 부모 노드는 자식 노드보다 크지만 않으면 된다. + 완전이진트리이다. 최소 트리(Min Tree)는 각 노드의 키(Key)값이 (자식 노드가 있다면) 그 자식의 키(Key)값보다 크지 않은(=작거나 같은) 트리이다. 최소 힙(Min Heap)은 최소 트리(Min Tree)이면서 ..
Algorithm specification 알고리즘은 유한한 일련의 명령을 해결하는 것이다. 알고리즘의 조건에는 1. 0개 이상의 입력 2. 적어도 1개의 출력 3. 모호하지 않은 명확성 4. 한정된 수의 단계 후에 종료되는 유한성 5. 프로그램과는 다른 ??? 이 있다. //Binary Search assumption sorted n (>=1) distinct integers stored in the array list return index i (if i, list[i] = searchnum) or -1 (otherwise) denote left and right left and right ends of the list to be searched initially, left = 0 and right ..
그래프 그래프(graph)란 연결되어 있는 객체간의 관계를 표현하는 자료 구조이다. 예시로는, 전기회로, 프로젝트 관리 그리고 지도에서 도시들의 연결 등이 있다. 그래프 이론(graph theory)은 그래프를 문제 해결의 도구로 이용하는 연구 분야를 의미한다. 트리 또한 그래프의 일종, 트리는 acyclic graph(사이클이 없는 그래프)이다. 그래프는 오일러에 의해 창안되었으며, 여기서 오일러 문제란 "모든 다리를 한 번만 건너서 처음 출발했던 장소로 돌아오는 문제" 이다. 문제의 핵심만을 표현하기 위해, 위치는 정점으로 다리는 간선으로 표기하였으며, 정점에 연결된 간선의 개수가 짝수이면 오일러 경로가 존재한다고 할 수 있다. 그래프는 V(정점(vertices)들의 집합)과 E(간선(edge)들의 ..