본문 바로가기

학부_대학원

(121)
Component[컴포넌트] Window에 관련된 문서나 인터널 책을 읽다보면Component라는 용어가 많이나온다. 이를 모르고 책을 읽다보면신경쓰여서 진행 할 수가 없던거 같다.Component란 영어로 일단 구성요소이다.그럼 무엇인가를 구성하는 요소인것을 알수 있다.그런데 컴퓨터에서 많이 사용하는 컴포너트라는 개념은독립적인 단위의 소프트웨어 모듈이라고 한다.독립적이란 의미에서 다른것에 큰 영향을 받지 않는다는 의미를 해석 할수 있다.해당 모듈 하나는 맡은 역할이 있다는 것을 알수있다.이를 좀 더 잘설명한 글이 있어 가져왔다.컴포넌트를 한마디로 표현하자면 소프트웨어 시스템에서 독립적인 업무 또는 독립적인 기능을 수행하는 모듈로서 이후 시스템을 유지보수 하는데 있어서 교체가 가능한 부품이다. 이 정의를 하드웨어 부품과 관련시켜 보..
다익스트라 알고리즘[Dijkstra Algorithm] Shortest Path Problem 문제를 해결하기 위한 알고리즘 각 edge에 가중치를 두는 weighted Graph에서 사용 Connected Graph에서 사용 가중치가 음수가 없어야함. 어떤 vertex를 시작점으로 하여 다음 vertex를 연결하는 edge의 가중치를 계산하여서 가장 작은 가중치를 가지는 경로를 탐색 가중치란 평균치(平均値:평균값)를 산출할 때 각 개별치(個別値)에 부여되는 중요도. 그런데 상황마다 다를것이다. 예를 들어 가난한 사람과 부자인 사람을 생각해보자 부자인 사람은 시간이 더 가치있다고 생각 하기때문에 edge를 통과하는데 걸리는 시간이 작은것에 더 높은 가중치를 둘것이다. 하지만 가난한 대학생의 경우 시간은 많지만 돈이 없기때문에 edge를 통과하는데 소비되는 돈..
침압차단시스템[Firewall] 우리가 말하는 `방화벽`이다.차단 (遮斷) [차ː단] [명사] 1. 액체나 기체 따위의 흐름 또는 통로를 막거나 끊어서 통하지 못하게 함.[naver] 차단. 막거나 끊어서 통하지 못하게함이다. 이를 잘 기억해야한다 뒤에 Detection[탐지], Prevention[방지]라는 개념이 나오기 때문에 생각하면서 공부 필요하다.외부 네트워크로부터 내부망을 안전하게 보호하기 위한 보안장치 중에 하나로 외부와 내부 네트워크의 연결점에 위치하여 네트워크 트래픽을 제어하는 시스템--> 제어 한다는 말에서 검사하고 막는 개념이 들어 갈 것같다. 침임차단 시스템 특징1. 외부 네트워크와 내부 네트워크의 경계선에 위치한다.2. 내부에서 외부로, 외부에서 내부로 들어오는 패킷을 처리 및 제어한다.--> 외부에서 내부만이 ..
Tree [트리] 트리의 정의그래프의 부분집합이다. 그래프 중에서 비순환, 연결 그래프이다.특징은 노드인 루트(root)가 반드시 하나 있음트리를 구성하는 꼭짓점 v,w간에 v에서 w로 가는 단순 경로가 있음 Sub Tree의 정의T를 구성하는 Vertex v를 루트로 하는 트리 Node의 정의그래프 T를 구성하는 꼭짓점 Root의 정의그래프 T의 시작 노드, 그래프 T의 가장 높은 곳에 위치 Parent Node 정의어떤 노드의 한단계 상위 노드Child Node 정의어떤 노드의 한 단계 하위 노드Sibling Node 정의같은 단계에 있으면서 부모가 같은 노드들Leaf Node 정의자식 노드가 없는 노드Internel Node 정의루트 노드나 잎노드가 아닌 노드Ancestor Node 정의루트 노드에서 어던 노드ㅇ에 ..
선형 리스트[Linear List] 리스트라고 하면 자료를 나열한 목록이라고 할 수있다.우리가 C언어 코딩하면서 아는 배열과 같다.하지만 여기서 Linear List라고 하면 무엇일까?Linear List의 다른 말은 Ordered List이다.자료들 간에 순서를 갖는 리스트이다.원소를 나열한 순서는 원소들의 순서가 된다.List1 = [object1, object2, object3]와 같이 1, 2, 3 순서가 맞게 된다.위에서도 알 수 있듯이 원소들의 순서는 메모리에 저장되는 순서와 같다.[원소들의 논리적 순서 == 원소들이 저장된 물리적 순서]복잡도를 개산해보면원소를 삽입 할 때1. 원소를 삽입할 빈 자리 만들기2. 준비한 빈자리에 원소 삽입하기 원소를 삭제 할 때1. 원소 삭제하기2. 삭제한 빈자리 채우기 #include "stdi..
Tcp 흐름제어 flow control[흐름제어] 송,수신 과정에서 데이터 처리 속도 차이를 해결하기 위한 방법이다. 수신 측이 송신 측보다 속도가 빠른 경우는 문제가 발생하지 않는다. 하지만 송신측이 수신 측 보다 속도가 빠르면 문제가 된다. 수신 측에서 수신된 데이터를 처리해서 상위 계층으로 서비스하는 속도에 비해서 송신 측의 데이터가 더 빠를 경우에 수신 측이 처리 할수 있는 데이터에는 한계가 발생한다. 그러면 송신측에서 데이터를 보냈어도, 수신 측은 이를 수용하지 못하기 때문에 Secret이라는 단어를 보냈는데 수신측은 sect만 받을 수도 있는 것이다. 이러한 문제를 해결하기 위한 방법이 흐름제어이다. 이런 흐름제어 방법에는 2가지가 있다. 하나는 stop and wait 방식이고 다른 하나는 Windowing..
Deadlock Deadlock이라 하면 교착상태라고 해서 운영체제를 공부하다보면 심심치 않게 들을 수있다. 대표적으로 4가지 경우가 있고 etc... 그럼 설명하면... 교착상태는 동일한 자원을 공유하고 있는 두 개의 컴퓨터 프로그램들이, 상대방이 자원에 접근하는 것을 사실상 서로 방해함으로써, 두 프로그램 모두 기능이 중지되는 결과를 낳는 상황 말로 설명하면 이런데 밑의 그림을 보고 이해하면 무엇보다 편한다. Thread1이 Resource1 코드를 실행 하기 위해서 해당 자원을 잠근다. 그리고 Thread2는 Resource2 코드를 실행 하기 위해서 해당 자원을 잠근다. 만약에 Resource1 코드에서 Resource2를 접근 하는 코드가 있을 경우 Resource2 코드에서 Resource1를 접근하는 코드가..
C++ 사용에 대한 이해 C언어가 있는데 왜 C++언어가 생겨 났을까? 수업시간에 들은 이야기이다. 문법적인 내용은 필요에 의해서 나중에 배우게 되어있다. 하지만 왜 필요한지를 모르면 쓸모 없는거와 같다. 그러니 왜 필요한지에 대해서 고민을 해라 생각해보면 맞는 말이다.. 그리고 문법적 요소나 리버싱 관점에서 어떠한 차이가 있을까? 하나 하나 정리 해보려 한다. C++을 사용하는 목적은 무엇일까? 시대가 변화함에 따라서 기술이 빠르게 변화하고 있다. 이에 발 맞추어서 뛰어나고 빠른 속도를 지향하고 있다. 이 것을 한마디로 설명하면 생산성이라고 할 수있다. 그러면 생산선의 요소에는 무엇이 들어 갈까? 생산성의 요소빠른 생산개발자 입장 : 프로그램을 빨리 개발 --> 회사, 사용자 : 이익을 얻음, 더욱 편리성 제공 적은오류빠르게 ..