1 |
1
인터넷을 통해 스케줄을 입력하고, 그 정해진 시간에 스케줄의 내용을 무선통신기기(7)로 전송하여 알려주는 스케줄러의 스케줄링 방법에 있어서, CGI프로그램부(3)는 사용자가 입력하는 스케줄을 데이터베이스 서버(4)에 저장하고, 데이터베이스 서버(4)에 있는 내용을 새로운 내용으로 변경하며, 입력 또는 변경된 내용을 사용자가 알 수 있도록 화면에 출력하고, 상기 데이터베이스 서버(4)는 사용자가 상기 CGI프로그램부(3)를 통해 입력된 데이터, 즉 사용자의 스케줄이나 계정, 비밀번호, 전화번호 등의 데이터를 저장하며, 데몬 프로그램부(5)는 시스템 내에서 항상 준비중인 상태를 갖고, 상기 데이터베이스 서버에 저장된 스케줄을 조사해서 현재날짜 현재시간의 내용을 읽은 후, 현재시간과 동일한 스케줄을 정해진 사용자에게 전송하는 것을 특징으로 하는 스케줄러의 스케줄링 방법
|
2 |
2
제1항에 있어서, 상기 데이터베이스 서버(4)에서의 데이터 처리는, 만약 사용자가 가입되어 있으면, ID와 패스워드를 입력받아 이 입력된 ID와 패스워드를 개인 세부사항 테이블과 그룹 세부사항 테이블의 내용과 비교하여, 개인 ID이면 개인 스케줄의 추가, 삭제/수정을 처리하고, 그룹 ID이면 그룹 스케줄의 추가, 삭제/수정을 처리하고, 만약 가입되어 있지 않으면, 개인인지 그룹인지를 확인하여, 개인이면 개인 세부사항 테이블에 데이터를 입력하고, 그룹이면 그룹 세부사항 테이블에 데이터를 입력하여 처리하며, 상기 개인 스케줄과 그룹 스케줄은 규칙적인 스케줄과 불규칙적인 스케줄로 구분되면서 일반 스케줄과 반복 스케줄로 나누어져 스케줄의 추가, 삭제/수정이 이루어지는 것을 특징으로 하는 스케줄러의 스케줄링 방법
|
3 |
3
제1항 또는 제2항에 있어서, 상기 데이터베이스 서버(4)에 저장된 내용을 정해진 시간에 전송하기 위한 알고리즘은, 상기 데이터베이스에 저장된 내용을 읽어오기 위해, 데이터베이스 서버(4)에 접속하여(단계 #1) 해당 데이터베이스를 선택하고(단계 #2), 현재시간과 날짜를 구해(단계 #3-1) 현재시간과 반복시간이 같으면 개인 반복테이블과 그룹 반복테이블을 갱신하고, 현재시간과 반복시간이 같지 않으면 단계 #3-3을 수행하고(단계 #3-2), 전체 테이블에서 현재날짜에 해당하는 스케줄 정보를 시간 순서로(오름차순) 모두 페치하여(단계 #3-3) 그중 시간 순서별로 하나씩 선택하고(단계 #3-4), 상기 단계 #3-4에서 선택되어진 내용이 없으면 그날에 전송할 스케줄이 없다는 의미로 간주하여 시스템을 잠시 중지시키고, 다시 단계 #3-1로 되돌아 가고(단계 #3-5), 상기 단계 #3-4에서 선택되어진 내용이 있으면 페치한 전송시간을 구해(단계 #3-6), 현재시간과 스케줄을 전송할 시간이 같거나 현재시간이 전송할 시간보다 지난 경우, 또는 이전 전송시간전에 스케줄을 전송한 시간과 스케줄을 전송할 시간이 같을 경우 단계 #3-8부터 수행하고, 그렇지 않을 경우 상기 단계 #3-1부터 다시 수행하고(단계 #3-7), 전송할 시간이 지나고 이전 전송시간과 스케줄을 전송할 시간이 다르면 단계 #3-9를 수행하고, 그렇지 않으면 단계 #3-12를 수행하고(단계 #3-8), 다음에, 페치한 스케줄중 다음 스케줄을 선택하여(단계 #3-9) 만약 선택한 내용이 없으면 단계 #3-1부터 다시 수행하고(단계 #3-10), 선택한 내용이 있으면 스케줄 전송시간을 구해(단계 #3-11) 다시 단계 #3-7부터 수행하고(단계 #3-10), 상기 단계 #3-8에서 현재시간>전송시간 그리고 이전 전송시간≠전송시간이 아니면, 선택한 스케줄의 전송할 시간을 이전 전송시간으로 저장하고(단계 #3-12), 스케줄을 전송하여(단계 #3-13) 특정 디렉토리의 파일에 기록하거나 데이터베이스에 따로 보관하며(단계 #3-14), 전송한 스케줄의 레코드는 전체테이블에서 삭제하고(단계 #3-15), 다음에, 페치한 스케줄중 다음의 새로운 레코드를 선택하여(단계 #3-16), 만약 선택한 내용이 있으면 단계 #3-12를 수행하고, 그렇지 않으면 단계 #3-1부터 다시 수행하며(단계 #3-17), 선택한 스케줄을 전송할 시간을 구해 단계 #3-7부터 다시 수행하는(단계 #3-18) 것을 특징으로 하는 스케줄러의 스케줄링 방법
|
4 |
4
제1항 또는 제2항에 있어서, 개인 반복테이블 갱신 알고리즘은, 적절한 날짜가 되면, 해당 반복스케줄의 종류를 모두 페치하여(단계 #1) 그중 하나를 선택하고(단계 #2), 선택되어진 개인 반복테이블의 종류가 없으면 더 이상 작업할 내용이 없는 것으로 간주하여 작업을 종료하고, 그렇지 않고 선택되어진 종류가 있으면 단계 #4부터 작업을 계속 수행하고(단계 #3), 이어서, 개인 반복테이블에 대한 정보, 즉 개인 반복테이블명, 스케줄을 전송하기 시작하는 시간, 사용자ID, 반복 주기일 등을 저장하고(단계 #4), 개인 세부사항 테이블에서 사용자의 정보를 모두 페치하여(단계 #5) 그중 하나를 선택하고(단계 #6), 다음에, 개인 사용자에 대한 정보, 즉 사용자 이름, 전화번호등을 저장하고(단계 #7), 페치한 반복테이블명을 이용하여 해당 반복테이블에서 모든 스케줄 정보를 페치하여(단계 #8) 그중 하나를 선택하고(단계 #9), 선택되어진 내용이 있으면 단계 #11를 수행하고, 그렇지 않으면 단계 #12를 수행하고(단계 #10), 이어서, 전송할 반복 스케줄을 전체테이블에 저장한 후 단계 #9를 수행하며(단계 #11), 해당 개인 반복테이블에 대한 정보를 수정하기 위해 반복 스케줄을 전송하기 시작하는 날짜를 새로운 날짜, 즉 다음에 전송할 날짜를 구한(단계 #12) 다음, 해당 개인 반복테이블을 갱신된 새로운 내용으로 수정한 후 단계 #2를 수행하는(단계 #13) 것을 특징으로 하는 스케줄러의 스케줄링 방법
|
5 |
5
제1항 또는 제2항에 있어서, 그룹 반복테이블 갱신 알고리즘은, 그룹에 대한 반복 스케줄을 전송하기 시작하는 날짜가 되면, 그룹 반복테이블의 종류를 모두 페치하여(단계 #1-1) 그중 하나를 선택하고(단계 #1-2), 선택되어진 그룹 반복테이블 종류가 없으면 더 이상 작업할 내용이 없는 것으로 간주하여 작업을 종료하고, 그렇지 않고 선택되어진 종류가 있으면 단계 #1-4부터 작업을 수행하고(단계 #1-3), 다음에, 그룹 반복테이블에 대한 정보, 즉 그룹 반복테이블명, 스케줄을 전송하기 시작하는 시간, 그룹ID, 반복 주기일 등을 저장하고(단계 #1-4), 개인 세부사항 테이블에서 그룹에 속한 사용자들의 정보를 모두 페치하여(단계 #1-5) 그중 하나를 선택하고(단계 #1-6), 선택되어진 내용이 있으면 단계 #1-8을 수행하고, 그렇지 않으면 단계 #1-13부터 수행하고(단계 #1-7), 다음에, 그룹 스케줄을 전송받을 사용자에 대한 정보, 즉 사용자 이름, 전화번호 등을 저장하고(단계 #1-8), 그룹 반복테이블에서 사용자에게 보낼 모든 그룹 반복 스케줄을 페치하여(단계 #1-9) 그중 하나를 선택하고(단계 #1-10), 그룹 반복테이블에서 선택되어진 내용이 없으면, 즉 전송할 반복 스케줄이 없으면 단계 #1-6을 수행하고, 그렇지 않으면 단계 #1-12를 수행하고(단계 #1-11), 이어서, 전송할 그룹 반복 스케줄을 전체 테이블에 저장한 후 단계 #1-10을 수행하며(단계 #1-12), 다음에, 그룹 반복 스케줄을 전송하기 시작하는 날짜를 새로운 날짜, 즉 다음에 전송할 날짜를 구한(단계 #1-13) 다음, 해당 그룹 반복테이블을 갱신된 새로운 내용으로 수정한 후 단계 #1-2를 수행하는(단계 #1-14) 것을 특징으로 하는 스케줄러의 스케줄링 방법
|