목록전체 글 (37)
To Be myself
운영체제의 역할- 프로세서 관리자 : CPU에서 실행중인 프로그램이나 작업인 프로세스의 리소스를 담당하며 상태를 변경한다.- 주기억장치 관리 : 주기억장치인 메모리를 할당하고 프로세스로부터 회수하면서 효율적인 관리를 한다.- 장치 관리자 : 운영체제 스케줄링 기법에 따라 컴퓨터의 장치(키보드, 프린터, 디스트 등)들을 관리한다.- 파일 관리자 : 보조기억장치의 시스템 프로그램, 응용 프로그램 등 파일의 읽기 쓰기를 관리한다. 운영체제의 처리 방식1) 일괄처리 시스템1950년대 한 번에 하나의 작업만 가능하고 모든 컴퓨터 자원을 독점하면서 문제가 생겼다. 따라서 일괄처리 시스템으로 여러 작업을 모아뒀다가 일정량 이상이 모이면 한꺼번에 처리하는 방식으로 작업한다. 자원 효율성을 높아지나 결과를 빠르게 확인하..
분석정확성 분석: 유효한 입력이 주어졌을 때 유한한 시간 내에 정확한 결과가 나오는지다양한 케이스를 처리할 수 있는지 확인하면서 수정해나가기 효율성 분석: 컴퓨터 자원(메모리)의 양과 수행 시간을 통해 평가 => 적은 메모리와 더 빠른 수행 시간- 공간 복잡도: 총 메모리 양 = 정적인 공간과 동적인 공간의 합- 시간 복잡도: 알고리즘 실행 시간. 최선의 수행시간 (가장 빠른 시간) / 일반적인 상황에서의 평균 수행시간 / 최악의 수행시간 점근 성능입력 크기 n이 커지면서 결정되는 알고리즘 성능입력 크키가 커질 수록 식의 최고차항을 고려해 수행 시간을 표현함Big-oh (점근적 상한) : 입력 크기 n이 커지면 최악의 수행시간은 g(n)에 비례함 (O(g(n))Big-omega (점근적 하한) : 좋은 ..
개념정의주어진 문제를 해결하기 위한 풀이 과정 조건: 입출력, 명확성, 유한성, 유효성생성단계기술방법: 자연어, 의사코드, 프로그래밍 언어, 순서도 등 자료구조와의 관계알고리즘에 적합한 자료구조, 자료구조에 적합한 자료구조 선정이 효율적인 프로그래밍의 기초 설계 기법분할정복 방법하향식 접근 방식문제의 입력을 더 나눌 수 없을 때까지 2개 이상의 작은 문제로 순환적(recurisvely)으로 분할하고 분할된 문제를 각각 해결한 뒤 그 해를 결합- 작업 방법: 분할 > 정복 > 결합문제를 작게분할하는 것이 중요예. 이진탐색, 퀵 정렬, 합병 정렬 동적 프로그래밍 방법욕심쟁이 방법