운영체제 시간에 배운 스풀~~ 내가만든 프로그램에 직접 적용 해보았다..

요즘 만들고 있는 멜론 스나이퍼~~ 그 프로그램에 스풀을 써보았다.

프로그램 메인 쓰레드와 함께 변환 쓰레드, 스풀 쓰레드가 작동한다.

사용자 삽입 이미지
(테스트 : 204MByte , MP3파일 30개)


기존 버젼은 파일 변환 후.. 전송이 완료된 후에야 다음 변환에 들어간다.

하지만 스풀을 사용한 후 파일 변환후, 전송은 스풀에 모두 맡겨 버리고 다음 파일 변환으로 바로 넘어간다.

역시 느린 플래쉬 메모리를 가진 MP3P로 보낼 경우 무려 36%나 빨라졌다.

학교에서 이론만으로 배운 내용을 실제 적용해 봤다는 것에 매우 뜻깊다. 물론 적용 기념으로 벤치마킹도했다. 시간을 측정하지 않더라도 채감 할 수 있는 향상이 있었다..;;




컴퓨터 전공이 아니라도 프린터 스풀은 들어 보았을 것이다.

스풀이라는 것은 느린 입출력 장치로 데이터를 보내고 받을 때 직접 보내지 않고 스풀에 맡기는 방식이다.

한글에서 프린트 버튼을 누르고 진행 그래프가 순식간에 100%가 되고 사라진다. 하지만 아직 프린트는 열심히 프린트 하고 있을 것이다.

사용자 삽입 이미지

한글에서 프린트를 누르면 스풀 프로그램에 프린트 할것을 맡긴다. 스풀은 받은 문서를 프린트보다 훨씬 빠른 하드디스크에 쓴다. 매우 빠르 시간에 완료 될 것이다.

문서를 받은 스풀 프로그램은 계속 해서 하드디스크에 저장해둔 문서를 프린트한다.

그리고 한글은 스풀에다 문서 인쇄에 대한 것을 모두 맡겼으니... 프린팅이 완료되지 않아도 다른 기능을 계속 수행 할 수 있다.

즉 자원을 활용도를 극대화 할 수 있다.

아~! 그리고 버퍼라는 말도 들어봤을 것이다. 버퍼가 아마도 더 익숙하지 않을 까 생각한다.

버퍼란 느린 장치와 빠른 장치와의 서로 데이터를 주고 받을 때 원할 하게 수행하기 위한 중간 저장공간이다.

버퍼랑 스풀은 기능상으로는 동일하다. 하지만 특별히 디스크를 중간 저장공간으로 쓸 경우 일반적으로 스풀이라고 말한다.
신고


티스토리 툴바