본문 바로가기
반응형

IT 이론236

디스크 스케쥴링 알고리즘 Head Pointer = 53Request : 98, 183, 37, 122, 14, 124, 65, 67Range : 0 ~ 199 FCFS : First Come First Served가장 먼저 들어온놈 부터 처리한다. 차례대로 차를 다 더하면 된다.(98 - 53) + (183 - 93) + (183 - 37) + (122 - 37) + (37 -14) + (124 - 14) + (124 - 65) + (67 - 65) = 640 SSTF : Shortest Seek Time First가장 가까운놈 부터 처리한다. 바로 앞에서 처리한 값과 가장 가까운 값의 차를 모두 더한다.(65 - 53) + (67 - 65) + ... + 생략. 답은 236 SCAN (Elevator Algorithm)시작점.. 2014. 10. 17.
분산 데이터베이스의 목표와 장단점 분산 데이터베이스의 목표 위치 투명성 (Location Transparency) 액세스하려는 데이터베이스의 실제 위치를 알 필요없이 단지 데이터베이스의 논리적인 명칭만으로 액세스할 수 있음 중복 투명성 (Replication Transparency) 동일 데이터가 여러 곳에 중복되어 있더라도 사용자는 마치 하나의 데이터만 존재하는 것처럼 사용하고, 시스템은 자동으로 여러 자료에 대한 작업을 수행함 병행 투명성 (Concurrency Transparency) 분산 데이터베이스와 관련된 다수의 트랜잭션들이 동시에 실현되더라도 그 트랜잭션의 결과는 영향을 받지 않음 장애 투명성 (Failure Transparency) 트랜잭션, DBMS, 네트워크, 컴퓨터 장애에도 불구하고 트랜잭션을 정확하게 처리함 분산 데.. 2014. 10. 17.
DAS, SAS, NAS, SAN 서버 대용량 스토리지 DAS : Directed Attached Storage 서버와 전용 케이블로 연결된 외장형 저장장치이다. 쉽게 생각하면 하드 여러개를 묶어서 서버와 연결 해 놓은 것으로 PC의 외장 하드와 비슷한 형태로 생각하면 된다. SAS : Serial Attached Storage DAS와 같은 형태이지만 병렬이 아닌 직렬 연결방식을 이용하여 속도를 대폭 개선한 방식이다. NAS : Network Attached Storage 네트워크를 이용해 연결되는 저장 장치이다. 무선 연결이다 보니 속도는 많이 느리다. Linux나 Windows같은 범용 OS가 아닌 스토리지 전용 고기능성의 OS가 탑재되어 있습니다. SAN : Storage Area Network 호스트의 종류와 무관하게 분산되어 있는 스토리지 디바이스.. 2014. 10. 17.
소팅 알고리즘 정리 (Bubble, Quick, Insert, Select, Heap) 본 글을 위 소팅 알고리즘을 한번 씩은 다뤄 본 사람들을 대상으로 기억을 되살리기 위해 적은 글이므로, 처음 보는 사람들은 좀 더 자세하게 포스팅된 글을 참고하기 바란다.설명의 편의를 위해 모든 정렬은 오름차순을 기준으로 한다. 1. Bubble Sort (버블 소트)구현하기가 가장 편해 정말 작은 input이 들어오거나, 효율성이 필요 없거나, 개발을 빠르게 해야 할 때 사용한다. 첫 번째와 두 번째 열을 비교하여 두 번째 열이 첫 번째 열 보다 작다면 두 열을 swap한다. 그 다음 두 번째 열과 세 번째 열을 비교하고, 그 다음은 세 번째, 네 번째를 비교하며 마찬가지 과정을 거친다. 이렇게 하면 가장 큰 값이 가장 마지막으로 이동되게 된다. 이젠 가장 뒷 열을 제외하고 나머지 열을 상대로 이런 과.. 2014. 10. 17.
[C언어 소스] 완전이진트리 순회(Complete Binary Tree Traversal) 본 예제는 트리가 Complete Binary Tree일때만 사용 할 수 있는 예제이다. Complete Binary Tree란 Level을 기준으로 최하단을 제외한 모든 노드가 두개의 자식노드를 가지면서, 최 하단 또한 좌측 순서대로 2개씩 모두 차 있는 트리를 이야기 한다. 책에서는 어떻게 정의 하는지 모르겠으나, 대충 아래의 그림을 보면 이해 할 수 있을 것이다. 트리가 완전 이진 트리일 경우 모든 노드들은 수학적인 규칙을 가진다. 레벨 순으로 1 2 3 4 5 6 이렇게 번호를 매길 경우, 왼쪽 자식 노드 번호 = (부모 노드 번호) * 2오른쪽 자식 노드 번호 = (부모 노드 번호) * 2 +1 이라고 할 수 있다. 이런 규칙 덕분에 실제 형태는 트리 형태이더라도 표현은 1차원 배열로 표현이 가.. 2014. 10. 15.
TCP 타이머 TCP에는 4가지 타이머가 있다. Retransmission : 재전송 타이머로 segment 1개당 하나가 할당된다. Persistence : 나머지 3개는 모두 연결당 1개가 할당된다. Keepalive Time-waited 1. Persistence timer 상대방 TCP로 부터 rwnd = 0 을 통보 받을 경우 더이상 데이터를 보낼 수 없게 된다. 상대방 TCP에서 흐름재개를 위해 rwnd > 0 을 통보하는 ACK를 다시 보냈으나 그 ACK가 소실 될 수도 있다. 이렇게 되면 두 TCP가 서로 상대방을 무한정 기다리는 deadlock 상태가 되게 된다. 이런 교착상태를 타개하기 위한 타이머가 Pertistence timer이다. (1) 상대방 TCP에서 rwnd = 0을 보낼 경우 persi.. 2014. 6. 12.
[컴퓨터망] TCP에서의 Karn's Algorithm 같은 세그먼트가 두번 송신되고 하나의 ACK를 받을 경우, 원래 세그먼트에 대한 ACK인지 재전송 세그먼트에 대한 ACK인지 여부 판단이 모호하다.다른 새로운 세그먼트를 전송하고 그에 대한 ACK를 받을 때에만 RTT를 갱신한다. 즉, 불확실한 정보는 반영을 하지 않음으로써 시간 추정의 정확도를 향상시킨다. 2014. 6. 12.
[컴퓨터망] 6 ACK Rules 1. 데이터를 보낼 때는 항상 ACK정보를 첨부한다. 트래픽이 오가는 것을 최소화 하는 것이다.2. 데이터 세그먼트를 1개 수신한 이후 500ms이 지난 후에 Explicit ACK를 전송한다. 이 또한 트래픽 감소용이다.3. 수신한 데이터의 세그먼트가 2개가 누적되면 500ms를 기다리지 않고 즉각 Explicit ACK를 보낸다.4. 순서가 맞지 않는 세그먼트가 먼저 도착 할 경우 즉각 Explicit ACK을 전송한다.5. 분실 세그먼트를 받을 경우 즉각 Explicit ACK를 전송한다.6. 중복 세그먼트를 받을 경우 즉각 Explicit ACK를 전송한다. 2014. 6. 12.
[컴퓨터망] TCP의 특징 Connection-oriented : 연결지향적이다. - 연결 설정, 데이터 전송, 연결 해제의 3단계를 거친다. Reliable data transfer : 신뢰성 있는 전송 - 상위 계층의 응용 프로그램에게 완전 무결한 전송 서비스 보장 - 오류제어, 흐름제어, 혼잡제어 메커니즘 제공 In-order byte stream : 순서가 있는 스트림 - byte단위(octet)로 순서가 부여된다 Full deplex data : 동일 연결상에 두개의 길이 존재 - 양방향 연결 두개를 동시에 만든다. - Maximum Segment Size 또한 각 방향마다 따로 설정된다. Point to point : 일대일 연결 - 하나의 수신측, 하나의 송신측 - 프로토콜상에서 멀티캐스트를 제공하지 않는다. 2014. 6. 11.
[데이터통신] ISDN과 B-ISDN/ATM (광대역 ISDN) ISDN은 통합된(Intergrated) 서비스(Service)를 디지털(Digital)로 제공하는 통신망(Network) 이다.컴퓨팅, 교환, 디지털 전송장치 간의 구분이 없어지고, 음성, 데이터 및 이미지 전송에 동일한 디지털 기술이 적용된 통합 시스템이다. - 음성(비음성) 서비스를 포함한 광범위한 서비스를 제공한다. - 음성 신호과 컴퓨터 단말기에서 사용되는 신호, 그리고 텔레비전의 영상 신호 등을 하나의 통신망으로 연결하는 것이 가능하다. - 데이터베이스나 정보 처리 기능의 이용 범위가 넓어지게 되어 통신의 이용 가치를 높이게 한다. - ISDN의 채널은 B, D, E등이 있다. - 통신망의 교환접속 기능에는 회선 교환 방식과 패킹 교환 망식이 있다. - 64Kbps 1회선 교환 서비스가 기본이.. 2014. 5. 25.
[데이터통신] HDLC(High-level Data Link Control) - 점대점 링크 및 멀티포인트 링크를 위하여 개발되었다. - 반이중 통신과 전이중 통신을 모두 지원한다. - 에러 제어를 위해 Go-Back-N ARQ를 사용한다. - 슬라이딩 윈도우 방식에 의해 흐름 제어를 제공한다. 6단계 프레임 구성 순서 - 플래그 -> 주소부 -> 제어부 -> 정보부 -> 검사부 -> 플래그 * 플래그(Flag) : 프레임의 시작과 끝을 나타내는 고유한 패턴(01111110)이다. * 제어부 : 제이부에 따라 프레임의 종류가 결정된다. * 주소부 : 브로드캐스트는 11111111, 시험용(No Station)은 00000000 * 프레임의 목적은 각 통화로의 혼선 방지 3가지 프레임의 종류 - 정보 프레임 : 사용자 데이터 전달, 데이터 확인응답 - 감독 프레임 : 제어부가 10.. 2014. 5. 25.
X.25 프로토콜 DTE와 DCE간의 인터페이스를 제공, 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 절차 *DTE(데이터 터미널 장치, Data Terminal Equipment)*DCE(데이터 회선 종단장치, Data Circuit-terminating Equipment) TCP/IP와는 또 다른 프로토콜이다. TCP/IP와 비슷하지만 TCP/IP보다 느리다. 느린 대신 안정성과 보안성이 뛰어나다. 예전에는 금융권 내부망에서는 TCP/IP를 쓰지 않고 X.25를 사용하는 경우가 많았으나 요즘은 대부분 TCP/IP로 통일되고 있다. 통신 프로토콜이 다르면 하드웨어나 소프트웨어도 그에 맞춰야 하는데 TCP/IP가 대세가 되고 하드웨어, 소프트웨어도 다 TCP/IP를 기준으로 출시가 되니 이에 따르는 것이다. 그리.. 2014. 5. 25.
[소프트웨어공학] FTR(Formal Technical Review)의 지침사항 정형 기술 검토의 지침사항은 아래와 같다. - 제춤의 검토에만 집중하라 - 의제를 제한하여 진행하라 - 논쟁과 반박을 제한하라 - 문제의 영역을 명확히 표현하라 - 해결책과 개선책에 대해 논하지 마라 - 참가자의 수를 제한하라 - 체크 리스트를 개발하라 - 자원과 시간 일정을 할당하라 - 의미있는 훈련을 행하라 - 검토자들의 메모를 공유하라 - 검토 과정과 결과를 재검토하라 (정보처리기사 기준으로 취합) 정리하자면 아래와 같다. 1. 제한된 범위에 대해 문제점만 활발히 검토될 수 있도록 한다. 2. 논쟁이나 반박도 없고, 해결책이나 개선점 논의도 없이 문제점만 이야기 한다. 하는 것 - 자원과 시간 일정 할당 - 문제 영역 설정 - 체크리스트 개발 - 제품의 검토 및 재검토 - 의미있는 훈련 제한하는 것.. 2014. 5. 25.
[소프트웨어공학] 화이트박스 테스트와 블랙박스 테스트 화이트박스 테스트 코드를 오픈 시킨 상태에서 논리적인 모든 경로를 검사하여 검사 사례를 설계한다. - 기초 경로 검사(Basic path test) - 제어 구조 검사 : 조건 검사, 루프 검사, 데이터 흐름 검사 블랙박스 테스트(기능 검사) 소프트웨어가 수행할 기능을 중심으로 기능이 완전히 작동되는 것을 입증하는 검사 - 동치 분할 검사 - 경게값 분석 - 원인-효과 그래프 검사 - 오류 예측 검사 - 비교검사 2014. 5. 25.
[데이터통신] CSMA/CD (Carrier Sence Multiple Access/Collision Detection) 채널의 사용권을 서로 경쟁하여 확보하는 방식으로 노드 간의 충돌을 허용하는 네트워크 접근 방식이다. CSMA/CD의 의미Carrier Sense, 회선의 상태에 따라 Multiple Access, 누구든 동시에 접근할 수 있는 Collision Detection, 충돌을 검사할수 있는 통신 방식 CSMA/CD가 중요한 이유우리가 사용하는 Ethernet이 CSMA/CD방식을 사용한 LAN이다. 지금 당장 우리가 쓰고 있는 방식이란 뜻. - 전송 중에 충돌이 감지되면 패킷의 전송을 즉시 중단하고 충돌이 발생한 사실을 모든 스케이션들이 알 수 있도록 간단한 통보신호를 송신한다. - 스테이션의 수가 많아지면 충돌이 많아져서 효율이 떨어진다. - 어느 한 기기에 고장이 발생하여도 다른 기기의 통신에 전혀 영향을.. 2014. 5. 25.
[소프트웨어공학] CASE(Computer-Aided Software Engineering) 소프트웨어 개발 과정중 일부를 전용 소프트웨어 도구를 사용하여 자동화 하는 것이다. - 소프트웨어 개발 비용을 절약할 수 있다. - 개발 기간이 짧다. - 자동화된 검사를 통해 소프트웨어 품질을 향상시킨다. - 소프트웨어 품질과 일관성을 효율적으로 관리할 수 있다. - 소프트웨어 생명 주기의 모든 단계를 연결시켜 주고 자동화시켜 준다. - 소프트웨어의 유지보스를 용이하게 수행할 수 있다. - 소프트웨어 모듈의 재사용성이 향상된다. - 통합 CASE는 소프트웨어 개발 주기 전체 가정을 지원한다. - 상위 CASE는 요구 분석과 설계 단계를 지원한다. - 하위 CASE는 코드를 작성하고 테스트하며 문서화하는 가정을 지원한다. 2014. 5. 25.
소프트웨어 재공학(Reengineering) - 현재의 시스템을 변경하거나 재구조화(Restructuring)하는 것이다. - 재구조화는 재공학의 한 유형으로 사용자의 요구사항이나 기술적 설계의 변경 없이 프로그램을 개선하는 것이다. - 사용자의 요구사항을 변경시키지 않고, 기술적 설계를 변경하여 개선하는 것도 재공학이다. - Preventive maintenance 와 관계된다. 2014. 5. 25.
관계대수와 관계해석 관계대수(Relational Algebra)는 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적인 방법이다.관계해석(Relational Calculus)은 원하는 정보가 무엇이라는 것만 정의하는 비절차적인 방법이다. 관계 대수의 설명으로 옳은 것 - 릴레이션 조작을 위한 연산의 집합으로 피연산자와 결과가 모두 릴레이션이다. - 일반 집합 연상과 순수 관계 연산으로 구분된다. - 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다. 관계 해석의 설명으로 옳은 것 - 관계 해석은 원래 수학의 프레디킷 해석에 기반을 두고 있다. 2014. 5. 24.
반응형