[소프트웨어공학] NS(Nassi-Schneiderman) 차트 NS(나씨 슈나이더만) 차트 모듈 명세서를 글로 쓸수도 있지만 N-S차트로 그림으로 그릴 수 있다. 플로우차트는 생각보다는 사용횟수가 많지 않다. 손으로 그리기가 까다롭기 때문이다. 이에 비해 NS차트는 더 쉽게 그릴 수 있어 생각을 더 쉽게 정리할 수 있다. 물론 NS차트만으로 모든것이 해결되는것은 아니다. 프로그램은 정해진 일을 정해진 방법으로 하도록 컴퓨터에 명령을 내리는 것이다. 컴퓨터는 정해진 일과 정해진 방법이 무엇인지 알수 없다. 왜냐하면 기계니까 따라서 우리는 두 가지 관점에서 프로그램을 만들어 갈 수 있다. 1. 무엇을 해야 하는지 생각해보기 컴퓨터에게 시킬일이 무엇이며 어떤 결과를 받아 보고 싶은지 정리 2. 어떻게 해야 하는지 생각해보기 사용자로부터 입력이 되는것과 입력없이 알 수 있는것들 가지고 어떤 처리를 어떤 순서로 진행해서 결과를 만들지 NS차트는 어떻게 원하는 결과를 얻을 수 있는지를 정리해 볼 수 있는 도구이다. NS차트 구성요소는 처리, 반복, 분기의 일반적인 프로그래밍 언어의 구성요소를 표현할 수 있다. 먼저 순차처리 네모 박스에 입력, 출력, 연산을 기록한다. 선택구조는 IF문이나 CASE문을 사용하여 처리 흐름을 기록한다. 반복구조는 While문이나 For문을 사용하여 조건에 따른 반복처리를 기술한다. 1에서 100까지 합을 구하는 ns차트 NS차트의 특징 논리의 기술에 중점을 둔 도형을 이용한 표현 방법이다. 그리기가 어렵다.(전문성이 있어야 잘 그린다) 순차, 선택, 반복으로 표현한다. 임의의 제어 이동이 어렵다. goto구조가 어렵다. 그래픽 설계 도구이다. 상자 도표라고도 한다 프로그램으로 구현이 쉽다. 조건이 복합되어 있는 곳의 처리를 명확히 식별하기에 적합하다. if문이 여러개일 때 가능 ...
[운영체제] 파일의 구조(순차 파일, 직접 파일, 색인 순차 파일) 파일의 구조는 파일을 구성하는 레코드들이 보조기억자치에 편성되는 방식 을 의미함 편성방식에 따라 순차 파일, 색인 순차 파일, 랜덤 파일, 분할파일이 있다. 파일 편성방법에 따라 파일 접근 방법을 분류할 수 있으므로 파일 접근 방법 이라고도 한다. 순차 파일(Sequential File, 순서 파일) 순차 파일은 레코드를 논리적인 처리 순서에 따라 연속된 물리적 공간으로 기록하는 것을 의미한다. 급여 업무처럼 전체 자료를 처리 대상으로 일괄 처리하는 업무에 사용된다. 대화식 처리보다 일괄 처리에 적합한 구조이다. 장점 파일의 구성이 용이하고, 순차적으로 읽을 수 있으므로 기억공간의 이용 효율이 높다 레코드만 저장하고 북합적인 정보는 저장하지 않으므로 기억공간의 낭비를 방지할 수 있다. 물리적으로 연속된 공간에 저장되므로 접근 속도가 빠르다 어떠한 기억 매체에서도 실현 가능하다 단점 파일에 새로운 레코드를 삽입하거나 삭제하는 경우 파일 전체를 복사한 후 수행해야 하므로 시간이 많이 걸린다. 파일의 특정 레코드를 검색하려면 순차적으로 모든 파일을 비교하면서 검색해야 하므로 검색 효율이 낮다. 직접 파일(Direct File) 파일을 구성하는 레코드를 임의의 물리적 저장공간에 기록하는 것으로, 직접 접근 방식(DAM; Direct Access Method)이라고도 한다. 레코드의 특정 기준으로 키가 할당되며, 해싱 함수(Hashing Function) 를 이용하여 키에 대한 보조기억장치의 물리적 상대 레코드 주소를 계산한 후 해당하는 주소에 레코드를 저장한다. 레코드는 해싱 함수에 의해 계산된 물리적 주소를 통해 접근할 수 있다. 입의 접근이 가능한 자기 디스크나 자기 드럼에 사용한다. 장점 직접 접근 기억장치(DASD)의 물리적 주소를 통하여 파일의 각 레코드에 직접 접근하거나 기록할 수 있으며, 접근 및 기록의 ...
[운영체제] MLQ & MFQ 다단계 큐 (Multi-Level Queue) 스케줄링 FIFO + RR 스케줄링 각 작업들을 서로 다른 묶음으로 분류할 수 있을 때 사용하는 알고리즘 ex) 작업을 전면 작업(대화형, Foreground Task) 과 후면작업(일괄처리형, Background Task) 으로 분류한다면 두 유형의 요구 반응 시간이 다르므로 서로 다르게 스케줄링해야합니다. 더욱이 전면 작업은 후면 작업에 비해 높은 우선순위를 갖는 경우가 많습니다. ex) 쇼핑몰에서 쇼핑은 빠르게 백그라운드에서는 다운로드는 느리게 다단계 큐 스케줄링 알고리즘은 준비상태 큐를 종류별로 여러 단계로 분할해 둡니다. 그리고 작업을 기억 장치의 크기나 프로세스의 형태에 따라 어느 한 큐에 지정합니다 각 큐는 자신만의 독자적인 스케줄링 알고리즘을 갖고 있습니다. 예를 들어, 전면 작업과 후면 작업이 분할된 큐에 지정되면 전면 작업 큐는 순환 할당 알고리즘에 의해 스케줄링 되고 후면 작업 큐는 선입 선처리로 스케줄링 됩니다. 또한 큐 사이에도 스케줄링이 있어야 하는데 이것은 고정된 우선순위의 선점식 스케줄링 입니다. 예를 들어, 전면작업 큐는 후면작업 큐 보다 절대적인 우선순위를 가질 수 있습니다. 큐 5개를 가진 다단계 큐 스케줄링 알고리즘 각 큐는 순서대로 절대적인 우선순위를 가집니다. 예를 들어, 시스템 프로세스, 대화식 프로세스, 그리고 대화식 편집 프로세스를 위한 큐들이 모두 비어 있어야 일괄처리 큐에 있는 프로세스가 실행됩니다. 일괄처리 프로세스가 실행되는 동안에 대화식 편집 프로세스가 준비 큐에 들어오면 일괄 처리 프로세스는 프로세서를 반납해야 합니다. 또한 큐들 사이에 시간을 나누어 사용할 수도 있습니다. 각 큐는 프로세서 시간의 일정량을 받아서 큐에 있는 프로세스들을 스케줄링 할 수 있습니다. 다단계 피드백 큐 (Multi-Level Feedback Queue) 스케줄링 입출...
댓글
댓글 쓰기