KR19980018170A - 정보 처리 시스템 - Google Patents

정보 처리 시스템 Download PDF

Info

Publication number
KR19980018170A
KR19980018170A KR1019970029750A KR19970029750A KR19980018170A KR 19980018170 A KR19980018170 A KR 19980018170A KR 1019970029750 A KR1019970029750 A KR 1019970029750A KR 19970029750 A KR19970029750 A KR 19970029750A KR 19980018170 A KR19980018170 A KR 19980018170A
Authority
KR
South Korea
Prior art keywords
client
processor
predictive
data
storage
Prior art date
Application number
KR1019970029750A
Other languages
English (en)
Other versions
KR100288492B1 (ko
Inventor
랜달 리 버트램
데이빗 프레데릭 챔피언
피터 제임스 브리턴햄
Original Assignee
포만 제프리 엘
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포만 제프리 엘, 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 포만 제프리 엘
Publication of KR19980018170A publication Critical patent/KR19980018170A/ko
Application granted granted Critical
Publication of KR100288492B1 publication Critical patent/KR100288492B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1626Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1632External expansion units, e.g. docking stations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3265Power saving in display device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • G06F3/04855Interaction with scrollbars
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27453Directories allowing storage of additional subscriber data, e.g. metadata
    • H04M1/2746Sorting, e.g. according to history or frequency of use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27463Predictive input, predictive dialling by comparing the dialled sequence with the content of a telephone directory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/724092Interfacing with an external cover providing additional functionalities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72445User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting Internet browser applications
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S345/00Computer graphics processing and selective visual display systems
    • Y10S345/905Display device with housing structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Library & Information Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

컴퓨터 시스템, 바람직하게는 이동 클라이언트 컴퓨터는 예측성 위제트(predictive widgets)를 사용하여 데이타 처리 및 디스플레이를 최적화한다. 예측성 위제트는 서식 기입 애플리케이션에서와 같이, 일단 사용자가 필드내로의 기입을 개시하면, 필드에 대한 예측성 디폴트 엔트리 또는 예측성 기입을 제공하도록 정의된 서식 필드내로 기입될 가능성있는 엔트리들의 예측성 리스트를 사용한다. 예측성 리스트들은 다수의 통신 컴퓨터 시스템 사이에서 공유 및 복제된다.

Description

정보 처리 시스템
일반적으로, 퍼스널 컴퓨터, 특히 IBM 퍼스널 컴퓨터는 폭넓게 사용되어 오늘날 사회 각 분야에 컴퓨터 기능을 제공하고 있다. 퍼스널 컴퓨터 시스템은, 통상적으로 단일의 시스템 프로세서와 이와 관련된 휘발성 메모리와 비휘발성 메모리를 포함하는 시스템 유닛, 디스플레이 모니터, 키보드, 하나 또는 그 이상의 디스켓 드라이브, 고정 디스크 저장장치, 선택사양의 프린터로 구성되는 데스크탑 컴퓨터(desk top), 플로어 스탠딩 컴퓨터(floor standing), 또는 휴대용(portable) 마이크로컴퓨터로서 정의될 수 있다. 이러한 시스템들의 뚜렷한 특징들 중의 하나는 이러한 구성요소들을 전기적으로 접속하는 데 마더보드(motherboard) 또는 시스템 플래너(system planar)를 사용한다는 것이다. 이러한 시스템들은 주로 단일의 사용자에게 독립적인 컴퓨터 기능(computing power)을 제공하도록 설계되어 있으며 개개인 또는 소기업이 구매할 수 있도록 가격이 저렴하다. 이러한 퍼스널 컴퓨터 시스템들의 예로서는 IBM사가 제공하는 퍼스널 컴퓨터로서 PERSONAL COMPUTER AT, PERSONAL SYSTEM/2, PS/1, Aptiva 등이 알려져 있다. 컴퓨터 분야의 숙련가들은 이러한 시스템들에 정통해 있을 것이다.
이러한 시스템들은 두가지의 일반적인 계열로 분류될 수 있다. 통상 모델 Ⅰ계열로 지칭되는 제 1 계열은 IBM PERSONAL COMPUTER AT 및 다른 IBM 호환 기종으로 예시되는 버스 아키텍쳐를 사용하고 있다. 모델 Ⅱ계열로 지칭되는 제 2 계열은 IBM 사의 PERSONAL SYSTEM/2 모델 50 내지 95로 예시되는 IBM사의 MICRO CHANNEL 버스 아키텍쳐를 사용하고 있다. 본래 모델 Ⅰ계열은 시스템 프로세서로서 대중적인 인텔 8088 또는 8086 마이크로프로세서를 사용했다. 이러한 프로세서들은 1 메가 바이트의 메모리를 어드레싱할 수 있는 능력을 가지고 있다. 모델 Ⅱ계열은 통상적으로 보다 저속의 인텔 8086 마이크로프로세서를 에뮬레이트하기 위해 리얼 모드에서 동작가능하거나 몇몇 모델에 대해 1 메가 바이트 내지 4 기가 바이트의 어드레싱 범위를 갖도록 보호 모드에서 동작가능한 고속의 인텔 80286, 80386, 80486 마이크로프로세서를 사용했다. 본질적으로, 80286, 80386, 80486 프로세서의 리얼 모드 특징은 8086 및 8088 마이크로프로세서에 대해 작성된 소프트웨어와 하드웨어적인 호환성을 제공하고 있다. 기술 수준이 향상됨에 따라, 계열 Ⅰ의 시스템은 일찌기 인텔의 펜티엄 마이크로프로세서와 그와 경쟁관계에 있는 다른 마이크로프로세서들, IBM사 및 모토로라사의 Power PC 프로세서와 같은 RISC(Reduced Instruction Set Computing) 마이크로프로세서, VESA 및 PCI 버스와 같은 고기능의 버스를 포함하는 고기능의 중앙 처리 장치쪽으로 개발되어 왔다. 이제, 컴퓨터 분야의 숙련가는 이러한 시스템들에 대해서는 정통해 있을 것이다.
회사와 소비자 환경에서 컴퓨팅이 행해지는 방식에 미치는 진보의 영향은 복잡해지고 있다. 퍼스널 컴퓨터 시스템이 개발되기 이전에는, 대부분의 컴퓨터들이 업무용으로만 사용되었으며 데이타 처리는 컴퓨터 시스템을 격납하는 온실(glass house)내에서 행해졌다. 질문들은 컴퓨터 기술자들에 의해 처리되기 위해 정보 관리자(information manager)를 통해 교환되었다. 퍼스널 컴퓨터 시스템이 폭넓게 사용됨에 따라, 한때는 기업 단위의 컴퓨터 시스템상에서 유지되던 데이타에 대한 액세스가 관리자 및 일선의 고용인들에게 까지 중요해지게 되었다. 기업의 데이타가 저장된 기업 시스템 또는 메인프레임에 대한 네트워크 서버를 통한 계층화된 액세스가 증가함에 따라, 퍼스널 컴퓨터 시스템 네트워크는 성장을 거듭하여 왔다.
정보와 관련한 업무(information work)가 기업내에서 정보 업무자에게 확산되고 기업내의 더욱 확산된 고용인 그룹의 업무에 영향을 끼침에 따라, 이러한 고용인들이 이동해야 할 필요성이 발생했다. 특히, 판매 영업사원, 운전 기사, 또는 사업 컨설턴트와 같은 외근 업무 종사자에 있어서, 그 업무 종사자가 기업측으로부터 멀리 떨어져 있는 동안 컴퓨터 시스템의 네트워크를 통해 기업 시스템에 통상적으로 저장되어 있는 기업 데이타에 액세스하는 것은 날로 중요해지고 있다. 이러한 액세스는 부분적으로는 노트북 또는 랩탑 컴퓨터 시스템과 같은 유선 접속된 퍼스널 컴퓨터 시스템을 사용하여 달성되었다. 통상적으로, 이러한 시스템에는 모뎀 또는 통신 소프트웨어가 장착되고, 그 결과, 이러한 시스템은 공중 전화 교환망(PSTN)에 접속될 때 보조 서버(supporting server) 또는 메인프레임과 접속되어 사용자는 원하는 데이타에 액세스할 수 있게 되어있다.
셀룰러 전화 네트워크에 의해 예시되는 바와 같은 무선 통신의 개발에 따라, 퍼스널 컴퓨터 시스템과 보조 서버 간의 유선 접속을 제거하는 것이 가능하게 되었다. 이러한 시스템은, 특히 소매 및 도매 사업에 사용되는 시스템용으로 개발되었으며, 이 시스템에 따라 사용자는 무선 송수신 서비스를 갖는 지역내에서 자유롭게 이동할 수 있으며 기업 활동을 보조하는 메인프레임 또는 서버와 데이타가 교환될 수 있게 하는 데이타 채널에 간헐적으로 또는 지속적으로 접속된다. 설명의 편이를 위해, 사용자가 휴대하는 이러한 시스템을 본 명세서에서 이동 클라이언트 시스템으로 지칭한다. 이동 클라이언트 시스템은, 유선 접속에 의해 발생하는 이동에 대한 구속으로부터 자유로이 사용자가 이동할 수 있다는 점과, 이동 클라이언트 시스템에 의해 액세스되는 기업 정보가 이동 클라이언트와 통신중에 있는 서버 또는 메인프레임 컴퓨터 시스템에 유지된다는 시스템의 클라이언트 특성에 의해 구별된다. 이러한 이동 클라이언트 시스템들은 또한 때때로 개인 통신용 단말기(personal communications assistants) 또는 개인 휴대용 단말기(personal digital assistants)로 지칭된다. 관심있는 독자(reader)는 이동 클라이언트 시스템에 관한 부가적인 배경 및 정보에 대해 이라 브로드스키(Ira Brodsky)에 의한 Wireless: The Revolution in Personal Telecommunications(Artech House, Boston, 1995)을 참조하기 바란다. 또한, 미국 특허 출원 번호 제 08/678, 017호를 참조하기 바란다.
지금까지 기술된 이동 클라이언트 시스템의 경우, 다른 설계상의 특성을 성취하는 반면 제한된 디스플레이 영역이 제공됨에 따라 여러가지의 어려움이 발생된다. 이러한 어려움들중 일부는 거리 번지와 고객명과 같은 영문숫자(alphanumeric) 데이타를 필요로 하는 필드에 대한 데이타 엔트리와 관련된다. 이러한 필요는 통상적으로 도매 주문, 택배 사업, 병원 환자, 및 진료 기록의 처리 등과 같은 임의의 서식 기입(form filling)응용에서 발생한다. 이러한 모든 사용자 환경들은 데이타 저장 시스템에 접속된 이동 클라이언트 시스템들이 이용되고 있는 환경들이다.
서식 기입 기능이 요구될 경우, 본 명세서에서 서식 위제트(forms widgets)로 지칭되는 만족스러운 방법이 개발되고 있다. AIX 프로그래밍에서 발생된 그래픽 장치를 의미하는 전문 용어 위제트는 키보드 또는 포인터로부터 입력을 수신할 수 있으며 콜백(callback) 수단에 의해 응용 프로그램 또는 다른 위제트와 통신할 수 있다. 본 명세서에서 AIX 정의에 일관성있게 사용되는 바와 같이, 위제트는 특정 태스크를 수행하는 디스플레이상에서의 코드 요소 또는 소형의 툴(tool)이다. 가령, 서식 위제트는 사용중인 서식내의 특정의 데이타 또는 정보 필드에 문자열을 제공할 수 있다. 그 일예로는, 번지를 필요로 하는 서식내의 특정 필드에 두개의 문자 상태의 식별자를 제공하는 서식 위제트일 수 있다. 이 경우에, 서식 위제트는 미국의 주를 식별하기 위해 미국 우편국(United States Postal Service)에서 채택한 두개의 문자의 50개의 조합으로부터 선택할 수 있다. 이러한 일예에서, 데이타가 제공될 리스트는 제한되고 있다. 다른 일예에서, 번지 서식에 대한 이름 필드와 같이, 리스트는 본질적으로 제한받지 않으며, 임의의 사전선택된 리스트와는 별도로 부가하거나 수동 입력이 가능하도록 오픈되어야 한다.
전술한 몇몇의 출원에서 역점을 두고 다루어진 바와 같이, 서식 위제트들은 특정의 리스트와 링크할 수 있다. 이동 클라이언트 시스템의 이동성의 경우, 공동의 영역내에서 공동의 노력으로 종사하는 사용자들 간에 일치성을 가지도록 하는 것이 바람직하다. 따라서, 이동 클라이언트 시스템을 통해 병원에서 환자 치료 데이타를 입력하는 제 2의 간호사는 입원국에서 제 1 간호사에 의해 다른 이동 클라이언트 시스템을 통해 입력될 수 있는 환자의 성명 및 주소에 액세스함으로써 이익을 얻을 수 있을 것이다.
본 발명은 전술한 바와 같이, 이동 클라이언트 시스템의 프로세서상에서 실행중인 제어 프로그램에 의해, 예상되는 위제트들의 리스트들이 다른 이동 클라이언트 시스템으로부터 복제되는 이동 클라이언트 시스템을 제공하고 있다. 이러한 동작이 실현되는 경우, 상기 복제된 리스트는, 모든 이동 클라이언트 시스템과 통신되는 데이타 저장 시스템을 통하거나 또는 직접적으로 한 시스템에서 다른 시스템으로 전달될 수 있다.
도 1 은 본 발명에 따른 이동 클라이언트 컴퓨터 시스템의 몇몇 구성요소들의 분해 사시도.
도 2 는 도 1 의 시스템에 대한 조립 사시도.
도 3 은 도 1 및 도 2 에 도시된 이동 클라이언트 시스템과 주변장치 및 시스템과의 사이의 상호관계를 개략적으로 도시한 도면.
도 4 는 도 2의 이동 클라이언트내에 구현되는 몇몇 회로 요소들의 개략적인 도면.
도 5 는 도 2의 이동 클라이언트에서 몇몇 회로 요소들과 그들의 관계를 개략적으로 도시한 도면.
도 6은 도 2의 이동 클라이언트에 대한 전력 모드들의 상태도와 그들 모드들간의 천이를 도시한 도면.
도 7은 도 6과 유사한 도면으로서, 도 2의 이동 클라이언트의 몇몇 요소들의 상태를 도시하며 이동 클라이언트상에서의 소프트웨어 실행 상태를 포함하는 도면.
도 8은 어떤 데이타를 디스플레이하기 위해 이동 클라이언트상에서 응용 프로그램의 실행에 의해 구동되는 도 2의 이동 클라이언트의 디스플레이 스크린을 도시한 도면.
도 9는 도 8과 유사한 것으로, 다른 스크린 디스플레이를 도시한 도면.
도 10은 위제트, 위제트에 대한 디폴트 및 기입(fill) 기능, 디폴트 및 기입 기능이 데이타를 인출하는 리스트 간의 관계를 개략적으로 도시한 도면.
도 11은 도 8과 유사한 도면으로, 도 8의 서식상에서 디스플레이되는 리스트 부분을 포함하는 키보드의 외관을 도시한 도면.
도 12는 본 발명에 따른 성명 필드 위제트(name field widget)에 잠재적으로 사용되는 항목 표를 도시한 도면.
* 도면의 주요 부분에 대한 부호의 설명 *
10: 이동 클라이언트 시스템15: LCD
20: 서버30: 프로세서
40: 배터리50: 터치스크린
본 발명의 양호한 실시예가 도시된 첨부된 도면을 참조하여 본 발명이 더욱 상세히 후술되겠지만, 당해 기술분야의 숙련가라면 본 발명의 바람직한 결과를 얻는 범위내에서 다양한 변경을 가할 수 있음을 이해할 수 있을 것이다. 따라서, 후술하는 설명은 본 발명을 제한하는 것이 아닌, 당해 분야의 숙련가에게 본 발명을 개시하는 목적으로 넓게 해석되어야 하는 것으로 이해할 수 있다.
이제, 첨부되는 도면을 더욱 상세히 참조하면, 도 1 및 도 2에는 전체가 10으로 표시되는 본 발명에 따른 이동 클라이언트 퍼스널 컴퓨터 시스템(이하, 이동 클라이언트로 지칭됨)의 일예가 도시되고 있다. 전술한 설명으로부터 명백한 바와 같이, 이동 클라이언트는 본 발명의 사상에 해당하는 범위내에서 다양한 특성을 갖는다. 이러한 특성들 중의 중심이 되는 것은, 이동 클라이언트 시스템이 이동 클라이언트 시스템과 보조 서버 및 메인프레임 간에 적어도 데이타, 가능하게는 음성과 같은 오디오와 데이타 모두를 통신하는 기능을 제공한다는 것이다. 이 실시예에서, 이러한 통신 기능은 세 개의 구별되는 구성요소, 즉 시스템 태블릿(system tablet)(11), 홀스터(holster)(12), 송수신기(13)로 분리될 수 있는 시스템을 제공함으로써 구현된다. 도시된 형태에서, 송수신기(13)는 홀스터(12)내에 장착될 수 있는 셀룰러 전화이며, 홀스터(12)는 홀스터(12)내에 제공되는 리셉터클(receptacle)내에 상기 태블릿을 미끄러뜨림으로써 상기 시스템 태블릿(11)에 접속될 수 있다. 본 발명의 시스템이 본 명세서에서 세개의 구성요소를 갖는 시스템으로서 기술 및 도시되었지만, 후술하는 바와 같이 이동 클라이언트 시스템(10)이 통합된 경우, 다시 말해서, 무선 송수신기(13)가 시스템 태블릿(11)과 일체화되고 그 사이의 접속이 어떠한 홀스터(12)도 사용하지 않고 시스템의 단일 커버내에서 이루어지는 경우, 본 발명의 여러 이점들이 실현될 것이라는 것을 이해할 수 있을 것이다. 송수신기/홀스터/태블릿 구조는 몇몇의 환경에서 소정의 효과를 제공한다. 그러나, 본 발명은 이러한 특정의 구조와 다른 형태로 실행될 수 있을 것이라는 것을 이해할 수 있다.
이러한 3요소 구조로 실현되는 장점은 하나의 무선 송수신기를 다른 것으로 쉽게 대체할 수 있다는 것이다. 특히, 디지탈 데이타 및 아날로그 오디오는 셀룰러 전화 무선 인터페이스상에서 셀룰러 디지탈 패킷 데이타(CDPD) 프로토콜 기술을 사용하여 데이타 교환이 행해질 수 있지만 상기 기술 외에도 다른 기술이 사용될 수 있다. 이러한 기술들중에는 주파수 분할 다중 접속(FDMA) 및 시분할 다중 접속(TDMA)과 같은 디지탈 무선 기법과, 다이렉트 시퀀스 스프레드 스펙트럼(DS-SS) 및 결과적 코드 분할 다중 접속(CDMA)과 같은 스프레드 스펙트럼 기법과, 주파수 호핑 확산 스펙트럼(FH-SS) 기술과, 개선형 이동 전화 시스템(AMPS) 또는 개선형 무선 데이타 정보 서비스(ARDIS) 또는 RAM 이동 데이타로서 알려진 것과 전술한 기법들중의 하나가 조합된 기법이 있다. 이러한 기법들이 진보하고 폭넓게 받아들여짐에 따라, 3요소 구조에 의해 최근에 등장하기 시작한 무선 송수신기(13)에 기존의 태블릿(11)을 적용시킬 수 있게 되며, 그에 따라 사용자가 시스템에 투자한 자본을 보호할 수 있게 된다. 그러나, 온도, 습도의 환경 조건이 나쁜 상태에서 사용하거나, 떨어뜨림으로 인한 충격에 노출되는 것과 같은 조건에 대해서는, 단일의 커버내에 송수신기 및 태블릿과 보조 회로를 갖는 일체형 시스템이 바람직한 선택이 될 수 있다.
이제, 도 3을 참조하면, 본 발명에 따른 시스템(10)과 보조 서버 및 주변장치사이의 관계가 개략적으로 도시되어 있다. 도면에서는 단지 단일의 이동 클라이언트 컴퓨터 시스템이 도시되어 있지만, 독자는 본 명세서에서 도시된 바와 같이 다수의 시스템들이 함께 연계되어 동작되도록 도시된 시스템이 복제될 수 있다는 것을 이해할 것이다. (이후에 보다 완전하게 설명되는 바와 같이) 백리트 액정 디스플레이 장치(backlit liquid crystal display)로 구현된 터치스크린(touchscreen)(15)을 통한 사용자 입력을 위해 통상적으로 태블릿(11)이 이용되지만, 시스템(10)은 보다 통상적인 키보드(16)를 수용할 수 있다. 도시된 바와 같이 키보드는 시스템(10)에 유선 접속되어, 사용을 원할 경우 접속 컨덕터(18)에 의해 데이타 입력이 시스템(10)에 도달할 신호 경로를 제공하도록 할 수 있다. 다른 방법으로, 키보드는 데이타 전송을 위해 적외선 링크를 이용하는 등 당업자에게 알려진 다른 수단에 의해 알려진 프로토콜(protocol)을 이용하여 링크될 수 있다. 도면에 있어서, 시스템은 적외선 방사에 의한 데이타 전송을 위해 IrDA 링크에 의해 프린트(19)에 링크되는 것으로 도시된다.
전술한 바와 같이, 무선 송수신기는 서버(20)에 무선 주파수 링크를 제공하며, 서버(20)는 보조 메인프레임 데이타 저장장치(21)와 유선을 통해 통신할 수 있다. 전체 기업의 운영과 관련한 데이타는 보조 메인프레임상에서 유지되며, 본 발명 및 전술한 관련 발명에 따른 이동 클라이언트(10)가 이용할 수 있도록 만들어진다.
본 발명에 따라 함께 데이타 처리를 행하는 회로 요소들을 참조하면, 도 4는 상기 회로 요소들의 구성의 한 형태를 도시하고 있다. 도시된 바와 같이, 예시된 이동 클라이언트 시스템(10)은 가장 중요한 부분으로 마이크로프로세서(30)를 가지며, 이 마이크로프로세서(30)는 RISC(Reduced Instruction Set Computing) 특성을 가진다. 이러한 프로세서는 액정 디스플레이를 위한 제어기(31), PC 카드(PCcards) 또는 PCMCIA 카드로 알려진 형태의 주변 장치를 위한 제어기(32), 인스트럭션/데이터 캐쉬(33), 메모리 및 외부 버스(34)에 대한 인터페이스, 실시간 클럭(35)을 포함하는 소자들을 가진다. 이 마이크로프로세서는 또한, 인터럽트 제어기(36) 및 다양한 서비스(37)에 대해 규정된 인터페이스를 가진다. 본 명세서에서는 이와 같은 특성을 가진 단일 프로세서로서 개시되지만, 적절한 보조로직 또는 칩에 의해 둘러싸인 인텔(Intel) X86 기반 프로세서를 사용하는 등 다른 수단에 의해 그와 같은 컴퓨팅 기능 및 인터페이스 기능을 성취할 수 있다는 것이 종래 기술의 컴퓨터 시스템 제조 및 사용으로부터 알려져 있다. 따라서, 도 4의 실시예는 본 발명에 따른 시스템의 실시예로서 제공된 것으로, 그와 같은 이동 클라이언트 시스템의 핵심적인 기능은 다른 방법으로도 구성될 수 있음을 알 수 있다.
도 4에 도시된 바와 같이, 핵심의 마이크로프로세서(30)는 주변 장치에 의해 지원된다. 가장 중요하게, 시스템의 동작을 위한 전력은 배터리(40)로부터 제공된다. 바람직하게, 배터리(40)는 스마트(smart) 배터리로 알려진 형태의 것으로서, 이러한 배터리에서는 하전 상태 및 재충전 과정의 셀프 모니터링(self monitoring)이 이루어진다. 그와 같은 배터리는 알려져 있으며, 이동 클라이언트 시스템(30)으로 신호를 제공하며, 이 신호는 배터리 상태, 충전 후 재사용에 대한 용이성 등을 사용자에게 알리는 표시를 발생하는 데 이용될 수 있다. 이동 클라이언트는 또한 바람직하게 유선에 의해 접속되는 경우 사용을 위한 통상적인 모뎀(41)과, 전화 상호 접속점(telephone interconnection point)(42)(RJ-11접속기로 표시)을 가진다. 시스템을 위한 메모리로는 플래시 메모리 액세서리 카드(flash memory accessary card)(44), 다이내믹 랜덤 액세스 메모리(dynamic random access memory ; DRAM)(45), 코어 플래시 메모리(core flash memory)(46)가 제공된다. 바람직하게는, 부가적인 다른 기능을 위해 한 쌍의 타입 II PCMCIA 슬롯(48, 49)이 제공된다.
이동 클라이언트 시스템에 의해 수행된 데이터 처리 동작의 결과를 디스플레이하기 위해, 시스템(10)은 상기한 바와 같이 LCD(15)를 가진다. LCD에는 적절한 터치스크린(50)이 중첩되며, 터치스크린(50)은 사용자에 의해 입력이 이루어지는 경우 이를 인식하기 위한 디지타이저(digitizer)로서 기능한다. 본 명세서에서 이러한 기능에 대해 다른 논의가 후술될 것이다. 배터리 및 온도 센서로부터의 입력과 같이, 터치 스크린으로부터의 입력은 아날로그/디지털 변환기(51)를 통해 프로세서(30)의 입출력(I/O) 포트에 전달된다. 전술한 바와 같이 키보드, IrDA 포트(52), 오디오 코덱(54), 연관된 스피커(55)와 마이크로폰(56)에 대한 접속을 위해 프로세서(30)의 다른 I/O 포트가 제공되며 무선 송수신기(13)에 대한 접속을 위해 인터페이스 접속기(58)가 제공된다.
전술한 바와 같이, 도 4를 참조하여 본 명세서에 개시된 기능의 특정 구조는 지원될 기능, 프로세서 코어 및 보조로직에 대한 설계자의 선택으로 인해 변경될 수 있다.
전술한 바와 같이, 이동 클라이언트 시스템(10)은 배터리로부터 전력을 공급받는다. 이러한 동작은 이동 클라이언트용으로는 적합하지만, 시스템(10)의 보조를 위해 교류 전원 형태의 보다 통상적인 전원과의 접속도 제공된다. 이러한 전원들은 도 5에서 60으로 표시되며, 후술하는 전력 관리 관계에서 참조된다. 쉽게 이해되는 바이지만, 이동 클라이언트 시스템에 의한 전력 사용의 관리는 상기 시스템의 활용도와 관련하여 중요하다.
도 5는 전원과 전력 소모의 관점에서 프로세서(30) 근방의 주변장치의 구성을 도시하고 있다. 전력 관리 토폴로지에 따라, 메인 배터리(40)로부터 태블릿(11)내의 프로세서(30)로 전력이 흐르는 한편, 별도의 전력 및 제어 신호가 홀스터(12)와, 홀스터내에 장착된 임의의 무선 송수신기(13)와, 시스템에 의해 사용되는 임의의 PC카드 액세서리에 영향을 끼친다. 이러한 개별적인 전력 흐름은 본 명세서에 기술되는 이동 클라이언트 시스템(10)에 중요하다. 특히, 홀스터(12)내에는 별도의 배터리(61)가 제공된다. 홀스터 배터리(61)는 바람직하게 스마트 배터리이며, 홀스터(12)내에 관련 배터리 제어기(62)와, 홀스터 주변장치 제어기(63)와, 프로세서(30)로/로부터 흐르는 데이타 스트림을 무선 송수신기(13)에 효과적으로 인터페이스하는 관련 회로(64)와 관련된다. 따라서, 홀스터(12) 및 송수신기(13)의 회로는 (이하 상세하게 기술되는 바와 같이) 프로세서(30)의 제어하에 있지만, 전원은 적어도 어느 정도는 태블릿(11)과 독립적이다. 이러한 분리는 중요하다. 태블릿이 홀스터와 맞물릴 때(engaged), 두 구성요소내의 회로는 전체의 관리에 있어서 서로 협력하여 동작한다. (통상적인 셀룰러 전화인 경우, 자체적인 전원과 전력 관리 기법을 가질 수 있는) 송수신기(13)가 홀스터(12)내에 배치되면, 송수신기(13)는 3요소 구조의 시스템에 대한 전력 관리에 있어서 협력하여 역할을 수행할 수 있다.
태블릿(11)에 대해 보다 상세히 살펴보면, 이 시스템은 배터리(40)용 제어기 회로(66)와 전원 장치(68)를 가지며, 배터리(40)는 태블릿(11)의 동작 전력을 전원 장치(68)에 공급한다. 본 시스템에서, 코어 프로세서(30)로부터의 요구를 일부 분담(off-load)하기 위해 전원 장치에 대한 제어를 실행하는 별도의 마이크로콘트롤러(69)가 제공된다. 이 마이크로콘트롤러는 프로세서(30) 및 변환기(70)로부터 입력을 수신한다. 프로세서(30) 및 변환기(70)는 실시간 클럭(35)용 배터리(71)에 의해 최소한의 기능을 수행하도록 지원된다. 상세히 후술되는 바와 같이, RTC 배터리(71)는 태블릿 시스템이 호출될 경우 기동(wakeup)할 것을 보장한다.
이제, 이동 클라이언트 시스템(10)에 대한 하드웨어 토폴로지로부터 시스템(10)의 전력 모드와 천이 이벤트(transition event)로 관심을 돌리면, 도 6은 이러한 방식들 중의 한 예를 도시하고 있다. 이후의 설명을 위해, 이동 클라이언트 시스템의 사용자에게 시스템의 동작 레벨에 대한 표시자(indicator)가 제공될 것이라는 것에 유의해야 한다. 통상적으로, 이러한 표시자 또는 지시자(annunciator)는 발광 다이오드 형태이며, 이러한 다이오드 장치들은 저렴한 가격에 용이하게 이용할 수 있으며, 대부분의 사용자에게 알려져 있다. 상기 3요소 구조 시스템에는 태블릿(11)용 표시자와, 홀스터(12)용 표시자와, 송수신기(13)용 표시자가 제공될 수 있다. 도 6에서, 태블릿(11)과 홀스터(12) 간의 상이한 동작 레벨을 반영하는 동작 상태들 간의 차이가 도출되며, 도시된 시스템은 태블릿과 홀스터가 결합된 3요소 구조 시스템인 것으로 가정한다.
이러한 배경을 염두에 두면, 시스템의 완전동작 상태에 해당하는 LED와 백라이트 LCD(15)의 발광으로 표시되는 바와 같이 태블릿(11)과 홀스터(12)는 모두 완전히 동작할 것이다. 이 상태는 75로 도시된다. (마치 모든 배터리가 제거된 것처럼) 모든 구성요소가 파워 다운(power down)된 완전히 반대의 상태는 76으로 도시되며, 모든 LED와 백라이트 LCD가 발광하지 않는 상태로 된다. 완전 동작 상태로부터, 사용자는 홀스터(12)를 턴오프시킬 목적으로 제공된 스위치를 동작시키거나, 홀스터와 태블릿을 분리시키거나 홀스터와 무선 송수신기를 분리시켜 필요한 상호접속을 차단함으로써 홀스터를 턴오프시킬 수 있다. 이러한 경우, 홀스터 LED는 발광되지 않는 상태(78)로 되지만, 태블릿 LED와 LCD는 (태블릿이 동작을 유지하는 것과 같이) 발광된 상태로 유지될 수 있다. 이동 클라이언트는 메모리에 저장된 데이타를 사용하여 데이타를 처리할 수 있지만, 보조 서버(20) 및 데이타 저장장치(21)와 (간헐적으로 또는 일시적으로) 분리될 수 있다. 이동 클라이언트 시스템상에서의 소프트웨어 실행에 의해 결정되는 바에 따라, 시스템은 서스펜드로서 알려진 상태로 진입할 수 있다. 서스펜드 상태(79)에서, 태블릿 LED 및 LCD와 홀스터 LED는 꺼진 상태이다. 상기 3요소 구조 시스템 중 무선 송수신기를 제외한 나머지가 서스펜드 상태로 유지되는 동안 무선 송수신기가 적절히 사용된다면, 시스템은 홀스터 LED가 발광하고 무선 송수신기가 동작하는 상태(80)로 진입할 수 있다. 마찬가지로, 이동 클라이언트 시스템상에서의 소프트웨어 실행에 의해 결정되는 또 한번의 이벤트에 따라, 시스템은 스탠바이(81)로서 알려진 상태로 진입할 수 있다. 스탠바이 상태에서, 태블릿 LCD는 전력을 절약하기 위해 꺼질 것이며, 태블릿 LED는 시스템이 즉시 기동될 수 있다는 것을 나타내도록 발광을 유지할 것이다. 홀스터는 파워 다운되거나(LED꺼짐) 동작 상태로 유지될 수 있다. 시스템(10)의 사전결정된 시간 간격의 스탠바이 모드가 경과한 후 상기 시스템을 서스펜드 모드로 천이시키는 타이머 기능이 제공된다.
시스템은 온/오프 스위치를 사용함으로써 오프 상태(76)와 동작 상태(78 또는 75)사이에서 천이할 수 있다. 시스템은 온/오프 스위치를 사용하거나 또는 배터리를 제거함으로써 서스펜드 또는 스탠바이 상태로부터 오프 상태(76)로 천이할 수 있다. 시스템은 사용자로부터의 서스펜드/재개(suspend/resume) 입력과, 홀스터에 접속된 무선 송수신기로부터의 입력 호출 표시와, 시간 간격의 종료와, 스마트 배터리 제어기로부터의 배터리 저충전 상태 표시에 응답하여 서스펜드 상태(79) 또는 (80)에서 동작 상태(78 또는 75)로 천이할 수 있다. 시스템은 터치스크린 또는 키보드를 통한 입력과 같은 사용자 이벤트에 응답하여 스탠바이 상태에서 동작 상태(78 또는 75)로 천이할 수 있다.
다른 관점의 전원 모드와 천이 이벤트가 도 7에 도시된다. 여기서, 시스템 상태들은 온 상태(81)와, 아이들 상태(82)와, 스탠바이 상태(84)와, 서스펜드 상태(85)와, 오프 상태(86)로서 도시된다. 온 상태(81)에서, 시스템 LED와 LCD는 발광되고, 프로세서(30)는 고기능 모드에서 동작하며, 다른 주변장치들은 필요에 따라 전력 관리된다. 비동작의 시간이 경과하면, 시스템은 프로세서에 의한 응용 프로그램의 실행이 종료되는 아이들 상태(82)로 진입하고, 프로세서는 전력 관리의 도즈 하이(dose high)모드로 진입하며, LCD는 발광되고, 다른 주변장치들은 필요에 따라 전력 관리된다. 임의의 사용자 이벤트에 의해 시스템이 온 상태로 복귀된다. 시간 경과로 인해 시스템이 스탠바이 상태(84)로 진입하면, 응용 프로그램은 정적(static)으로 되며, 프로세서는 전력 관리의 도즈 로우(dose low)모드로 진입하고, LCD는 꺼지며, 다른 모든 주변장치들은 필요에 따라 전력 관리된다. 시간 경과로 인해 시스템이 서스펜드 상태(85)로 진입하게 되면, 응용 프로그램은 정적으로 되고 재개를 위해 체크포인트가 설정되며, 프로세서는 전력 관리의 슬립(sleep)모드로 진입하고, LCD는 꺼지며, 다른 모든 주변장치들은 오프된다. 따라서, 완전한 동작 상태(81)로 복귀하는데 소요되는 시간 간격에 의하면, 시스템은 아이들 상태(82)로부터는 가장 신속하게, 스탠바이 상태(84)로부터는 덜 신속하게, 서스펜드 상태(85)로부터는 보다 덜 신속하게, 오프 상태(86)로부터는 가장 천천히 복귀할 것이다.
본 발명의 이동 클라이언트 시스템에 대해 이루어지는 데이타 통신 및 디스플레이에 대해서 간략히 언급하는 것이 유익할 것이라 생각된다. 이제 도 8을 더욱 상세히 참조하면, 시스템(10)상에서 실행되는 응용 프로그램에 대한 디스플레이 스크린의 일예가 도시된다. 바람직하게는 시스템(10)은 하이퍼텍스트 전송 프로토콜(HyperText Transfer Protocal:HTTP)에 의한 접속용과 하이퍼텍스트 마크업 언어(HyperText Markup Language:HTML)의 파일용으로 사용되는 것과 같은 브라우저(browser) 프로그램의 성질을 가지는 응용 프로그램을 실행한다. HTTP 및 HTML은 인터넷(internet) 또는 월드 와이드 웹(WWW)으로서 알려진 환경에서 널리 사용되고 있다. 이러한 기법들은 본 명세서에서 클라이언트의 최소 자원을 갖는 이동 클라이언트 시스템의 동작을 용이하게 하고 보조 서버 및 메인프레임 데이타 저장장치를 통해 이용가능한 자원을 최대로 활용하기 위해 사용된다.
특히, 클라이언트 시스템의 프로세서(30)는 시스템 플래시 메모리(46)에 저장된 운영 체제(operating system) 프로그램 및 브라우저 프로그램을 실행한다. 이러한 프로그램들을 실행할 경우, 시스템은 송수신기(13) 및 인터페이스(58)에 의해 제공된 무선 링크 또는 와이어 접속된 경우의 모뎀을 통해 데이타를 전달함으로써 보조 서버와 데이타를 교환한다. 이렇게 교환된 데이타는 시스템 DRAM 메모리(45)내에 저장되어 운영 체제와 브라우저에 의해 조작될 수 있다. 브라우저는 보조 서버로부터 획득되는 데이타와 함께, 가령 도 8에서 도시되는 바와 같이 나타날 수 있는 스크린을 상기 LCD(15)상에 디스플레이할 것이다. 도시된 스크린은 디스플레이될 필드의 상한을 가로질르는 타이틀 바(90)를 포함하며, 디스플레이될 필드내에 숫자 또는 이름을 식별하는 것과 같이 데이타용으로 정의된 필드를 갖는 서식을 갖는다. 도시된 특정의 서식에서, 필드는 식별된 환자의 센터 번호용 필드, 병원 번호용 필드, 생년월일용 필드, 입원 허가일용 필드 등을 포함한다. 타이틀 바(90)에 인접한 곳에 91로 도시된 동물(여기서는 캥거루로 예시됨)이 표시되어 있다. 동물 표시는 본 발명의 한 실시예에 따라, 시스템이 한 데이타 액세스에서 다른 데이타 액세스로 점프중이고 사용자가 상기 점프의 종료를 대기해야 한다는 것을 나타내기 위해 사용되고 있다. 또한, 타이틀 바(90) 바로 아래에는 메인(또는 초기) 스크린으로의 복귀와, 한 스크린으로 뒤로 돌아감과, 무선 링크를 통한 데이타 교환과, 배터리 충전 상태와, 제시된 스크린 사이의 이동과 같은 기능 버튼의 표시가 도시된다. 중환자실(ICU)에 대한 입원 허가일과 클래스 필드와 같은 소정의 필드들에는 사용자가 코멘트를 붙일 수 있으며, 이들 필드를 근처에 노트북아이콘을 두어 표시할 수 있다. 노트북은 어떠한 코멘트도 현재 부가되어 있지 않다는 것을 나타내도록 (입원 허가일 필드에 인접한 것처럼)덮혀져 있거나(closed), 현재 코멘트를 포함하고 있다는 것을 나타내도록 (클래스 필드에 인접한 것처럼)펼쳐져(open) 있을 수 있다.
이동 클라이언트 시스템(10)이 LCD(15)위에 놓여지는 터치스크린(50)을 가지므로, 터치스크린 필드에 가해지는 스타일러스(stylus), 포인터(pointer), 또는 손가락에 의해 시스템으로 데이타가 입력될 수 있다. 따라서, 도 8을 참조하면, 사용자가 특정 환자의 성별을 나타내는 정보를 입력하고자 한다면, 사용자는 이 데이타를 입력하기 위해 (스타일러스, 포인터, 또는 손가락으로)남성 버튼 또는 여성 버튼을 터치해야 한다. 마찬가지로, 사용자가 코멘트를 입력하고자 한다면, 사용자는 노트북 아이콘에 의해 정의된 필드를 터치하여 이 아이콘이 덮여진 상태와 펼쳐진 상태 사이에서 변화하도록 함으로써 적절한 수치적 혹은 영문자 데이타를 입력하기 위한 필드를 개방할 수 있다.
쉽게 이해되는 바이지만, 여기서 기술되는 유형의 이동 클라이언트 시스템의 스크린 디스플레이에 대해 이용가능한 영역은 제한적이다. 이러한 제한은 디스플레이를 발생시키며 디스플레이 영역위에 놓여지는 터치스크린을 사용하여 데이타를 입력하는데 사용되는 스크린 기술의 전면에 심각한 제한을 가한다. 본 발명은 이동 클라이언트 시스템의 프로세서에 액세스가능하게 저장된 제어 프로그램이 상기 프로세서상에서 실행될 때, 상기 제한된 디스플레이 영역을 시스템의 사용자의 요구에 따라 수용하는 경우 제공된 다른 구성요소와 협력하여 동작할 것이라는 것을 예상하고 있다.
전술한 바와 같이, 서식 기입 애플리케이션들이 통상적으로 컴퓨터 시스템상에서 흔히 사용된다. 도 9는 다수의 서식 위제트가 제공되는 하나의 단순화된 서식을 나타낸다. 이들 서식은 텍스트 엔트리 필드(이름)와 멀티라인 텍스트 영역(주석)에 대한 텍스트 위제트들을 포함한다. 또한, 상기 서식에는 선택을 위한 다수의 위제트들 중의 하나의 위제트가 포함되는데, 상기 위제트에서, 제공된 다수의 옵션들 중의 하나의 옵션을 선택함에 따라 하나의 항목(item)이 풀다운 리스트로부터 선택될 수 있는 소위 라디오 버튼(눈) 또는 옵션 리스트(헤어)를 갖는 그룹의 나머지가 선택해제된다. 또한, 풀다운 리스트에서 각각의 항목이 체크되거나 체크되지 않는 체크 박스(애완 동물) 및 옵션 리스트(취미)에 대한 온/오프 스위치 위제트들이 포함된다.
도 9에서의 서식은 다수의 가능한 스타일을 대표하는 위제트 스타일을 사용한다. 중요한 것은 디스플레이될 특정의 스타일이 아니라 입력 위제트의 클래스들이다.
많은 컴퓨터 애플리케이션들은 사용자로 하여금 서식에 대해 디폴트를 설정할 수 있도록 한다. 가령, 워드퍼펙(WorldPerfect) 6.1이라는 상표로 판매되는 워드 프로세싱 프로그램에서, 템플릿(templete)은 성명, 주소, 전화번호와 같은 개인 정보에 대한 서식을 제공한다. 디폴트로서 저장버튼은 이후의 템플릿으로 하여금 현재 정보로 서식을 초기화시키도록 한다. 많은 애플리케이션들은 입력된 각각의 서식을 디폴트로서 저장하며, 이전 서식으로부터의 데이타로서 다음 서식의 필드를 초기화한다. 애플리케이션은 이전 서식으로부터 단지 일부의 위제트들만을 초기화하면서 다른 위제트들은 일정한 디폴트로 초기화할 수도 있다. 텍스트 엔트리 위제트들은 종종 공백(blank)으로 초기화된다.
많은 애플리케이션들은 이전 서식으로부터 일치하는 데이타를 사용함으로써 사용자가 타이핑할 때 텍스트 위제트의 내용을 기입한다. 가령, 상표, 퀵큰(Quicken) 3.0으로 판매되는 회계 프로그램(accounting program)은 개인 전표를 기록하는 서식을 갖는다. 사용자가 수취인 텍스트 필드에 각 문자를 타이핑한 후, 퀵큰은 지금까지 타이핑된 문자로부터 개시되는 이전 엔트리로 필드를 완성한다. 따라서, 사용자는 이전에 입력된 수취인을 유일하게 확인하기에 충분한 문자들을 타이핑하기만 하면 된다. 이러한 특징은 퀵필(QuickFill)로 지칭된다.
퀵필이 이전 엔트리의 영문자 리스트를 사용하고 있음을 주지하는 것이 중요하다. 가령, 이전의 전표에는 지난달의 Ace Hardware에 대한 12장의 전표와 세 달 전의 AAA에 대한 한 장의 전표가 포함되어 있다고 가정한다. 사용자가 문자 A를 타이핑하는 경우, 퀵필은 AAA를 제시하는데 그 이유는 상기 AAA가 알파벳순으로 Ace Hardware 이전에 오기 때문이다. 퀵필은 Ace Hardware가 더욱 최근에 혹은 더욱 빈번히 사용되었기 때문에 Ace Hardware가 더 가능성이 있을 것으로는 추론하지 않는다. 퀵필은 사용자가 문자 C를 타이핑한 후에만 Ace Hardware를 제시한다. 퀵필에 의한 제시의 알파벳적인 성질은 텍스트 엔트리 위제트에 대한 전형적인 성질이다.
본 발명에 따르면, 시스템 프로세서에 액세스가능하게 메모리에 저장된 제어 프로그램이, 도 9에서 예시되고 참조되는 모든 타입의 위제트에 대한 개선점을 제공하는 것으로 된다. 간략히 말하면, 각 위제트는 가장 가능성이 높을 듯한 선택에 대해 이전 서식에 근거하여 디폴트로 가리키고 있다. 그러나, 가장 가능성이 높을 듯한 선택은 이전 엔트리의 빈도 및 최신도에 의해 결정되며, 알파벳 순서는 단지 타이브레이커(tie-breaker)이다. 텍스트 엔트리 위제트들은 사용자가 입력하고 있는 내용을 완료하는데 이전 엔트리를 사용하지만, 가장 빈번하고 가장 최신의 엔트리가 선호된다.
사용자의 선택을 예측하는데 빈도 및 최신도를 이용하는 위제트들은 본 명세서에서 예측성 위제트로 지칭된다. 각각의 예측성 위제트는 그 위제트에 대한 예측성 리스트, 이전 리스트, 또는 사전결정된 엔트리를 포함한다. 예측성 리스트는 각 엔트리의 레코드를 포함함으로써 일치하는 엔트리의 빈도 및 최신도를 분석할 수 있도록 한다. 예측성 리스트는 더욱 상세히 후술되는 방식으로 용도 또는 오버타임(overtime)에 따라 변화할 특정의 순서로 확률을 제공하도록 구성되는 일련의 가능성있는 데이타 엔트리이다.
예측성 위제트는 그 예측성 리스트를 두가지 방법으로 사용한다. 첫째, 위제트는 예측성 디폴트를 설정하기 위해 상기 리스트를 이용한다. 예측성 디폴트는 서식을 사용하기 위해 오픈될 때 상기 위제트의 초기상태를 설정한다. 둘째, 위제트는 문제가 되는 필드에 대한 예측성 기입(predictive fill)을 설정하기 위해 상기 리스트를 이용한다. 다시 말해서, 필드가 채워지기 위해 선택되고 사용자가 이 필드에 대한 데이타 입력 동작을 개시할 때, 입력된 초기의 몇몇 문자들은 상기 필드를 채우는데 필요한 완전한 데이타를 예측하는데 사용된다. (사용자는 제안된 기입(fill)을 받아들이거나 버릴 수 있다.)
도 10은 예측성 위제트, 예측성 리스트, 예측성 디폴트, 예측성 기입 사이의 관계를 도시하고 있다. 이러한 각 대상은 차례차례 검사될 것이다.
본 발명을 구현하는 서식 기입 프로그램은 기존 서식 시스템상에서 사용될 수 있다. 가령, 하이퍼텍스트 마크업 언어(HTML)는 도 9에서 확인된 위제트 타입들을 갖는 서식들을 지원한다. HTML이 개방형이고 확장가능하기 때문에, 서식 위제트들에 대한 신택스(syntax)는 예측성 위제트들을 포함하도록 확장될 수 있다. 본 발명을 구현하는 서식 기입 프로그램은 시스템의 텍스트 기입 기능과는 무관하다. 다시 말해서, 상기 프로그램들은 키보드, 수기 인식, 음성 인식, 다른 문자 기입 수단과 적절히 기능한다.
전술한 바와 같이, 예측성 디폴트 기능은 서식이 디스플레이될 때 위제트의 초기 상태를 설정한다. 이러한 것은 텍스트 기입 위제트들외의 다른 위제트들을 포함하는 모든 타입의 예측성 위제트들에 적용된다. 예측성 디폴트는 상기 위제트를 일정한 디폴트로 설정할 수 있는데, 이러한 설정에서는 예측성 리스트를 전혀 사용하지 않으며, 이것이 전통적인 위제트가 동작하는 방식을 나타낸다. 또한, 사용자는 상기 일정한 디폴트를 수동으로 설정할 수 있다.
그러나, 예측성 디폴트는 보통 이전 엔트리의 최신도 및/또는 빈도에 근거하여 필드를 초기화한다. 만약 예측성 디폴트가 최신도를 이용한다면, 이전 서식으로부터의 엔트리는 항상 새로운 서식상에 나타나게 된다. 가령, 도 9에서, 만약 동일 가족이 함께 입력된다면 성(last name)에 대한 디폴트는 최신성에 기초를 둘 수 있다. 만약 예측성 디폴트가 빈도를 이용한다면, 가장 많이 사용된 이전 엔트리가 새로운 서식상에 나타나게 된다. 이러한 경우, 최신도는 두개 또는 그 이상의 엔트리가 동일 빈도를 가질때 타이브레이커로서 기능할 것이다. 가령, 도 9에서, 입력되는 대부분의 사람이 청색의 눈을 갖는다면, 항상 청색이 선택된다. 디폴트는 또한 빈도 또는 최신도 중 하나에만 의존하지 않고 빈도 및 최신도를 조합할 수 있다. 이러한 것은, 빈도에 대한 F와 최신도에 대한 R를 갖는 도 10에서 F+R 바 또는 밸런스에 의해 도시된다. 빈도와 최신도 간의 스위치 대신에 예측성 디폴트는 연속 입력단자(continuum)를 제공한다.
가령, 컴퓨터 시스템에 각 소포의 목적지를 기록하는 노쓰 캐롤라이나 소포 배달 회사의 작업자를 가정한다. 만약 회사 소포의 30%가 샬러트(Charlotte)로 가고, 20%가 채플 힐(Chapel Hill)로 가며, 20% 미만이 임의의 다른 도시로 간다고 가정한다. 첫번째 고려사항은 작업자의 컴퓨터 시스템상의 도시 엔트리 위제트에 대한 예측성 디폴트가 항상 샬러트인 것으로 간주될 수 있다. 다시 말해서, 상기 예측성 디폴트는 빈도에만 근거를 두어야 한다. 그러나, 클라이언트는 한 장소에서 다른 장소로 소포들을 그룹으로 운반하는 경향이 있기 때문에 특정의 도시로 가는 소포들이 종종 서로 인접하게 위치된다고 가정하자. 따라서, 만일 한 소포가 채플 힐 행이라면, 또한 인접한 다음의 소포가 채플 힐 행일 가능성이 높다. 또한, 만일 한줄로 나열된 두개의 소포가 채플 힐 행이라면, 다음의 소포는 샬러트 행이 아니라 채플 힐 행일 가능성이 더 높다. 따라서, 예측성 디폴트는 빈도 및 최신도에 근거를 두는 편이 매우 적절할 것이다. 아마도 두개의 채플 힐 소포가 입력된 후, 디폴트 스위치는 채플 힐 행으로 전환될 것이다. 그러나, 작업자가 샬러트 행의 소포로 채플 힐 시퀀스를 차단하면, 샬러트에 대한 한번의 최신도 엔트리에 샬러트에 대한 엔트리의 빈도를 부가한 것에 의해 상기 디폴트는 샬러트로 다시 전환된다.
예측성 디폴트의 특별한 경우는 스크롤 바와 같은 연속 입력단자로부터 선택하는 위제트이다. 이러한 위제트에 대해, 예측성 디폴트는 중간값 대신 이전 엔트리들의 평균을 제시할 수 있다. 목표는 가장 가능성있는 최종값에 위제트를 근접하도록 하는 데 있다.
예측성 기입 기능은 사용자가 입력하고 있는 것을 완성하기 위해 가장 가능성있는 스트링을 제시하는 데 있으며, 텍스트 엔트리 위제트에 가장 많이 적용된다. 상기 예측성 디폴트와 같이, 예측성 기입 기능은 빈도, 최신도, 이들 두개의 조합을 이용한다. 예측성 디폴트 및 예측성 기입 기능은 동일한 예측성 리스트를 이용한다. 그러나, 이러한 두개의 기능은 상이한 밸런스의 빈도 및 최신도를 이용할 수 있다. 이러한 것은 F+R밸런스 빔상에서의 상이한 지지점(fulcrum) 또는 포인터 위치에 의해 도 10에서 도시된다.
전술한 소포 배달 회사의 일예를 수정하여, 35%의 소포가 랠리(Raleigh)로 가고, 30%가 샬러트로 가며, 20%가 채플 힐로 간다고 가정하자. 예측성 디폴트가 완전히 빈도에만 근거를 두고 있으며 Raleigh로 설정된다면, 최초 문자 C를 기입하는 사용자는 상기 필드의 입력에 대해 상이한 제시를 받게 될 것이다. 예측성 기입이 완전히 빈도에만 의존한다면, Charlotte을 제시할 것이다. 만약 예측성 기입 기능이 완전히 최신도에 의존한다면, 샬러트 또는 채플 힐 중 가장 최근에 사용된 적이 있는 쪽을 제시할 것이다. 만약 예측성 기입이 빈도 및 최신도의 조합을 이용한다면, 예측성 기입은 채플 힐이 가장 최근에 사용된 적이 없는 경우 샬러트를 제시하는데, 이 경우, 채플 힐이 우선 선택된다.
본 발명을 이용하는 애플리케이션 개발자는 빈도와 최신도 사이의 최적의 밸런스를 결정해야 한다. 각 서식상의 각 필드는 예측성 디폴트와 예측성 기입 모두에 대해 유일한 빈도/최신도 밸런스를 가질 수 있다. 최적의 밸런스를 결정하기 위해서는 단말 사용자 환경과 실험치에 대해 정통해 있어야 한다. 일반적으로, 사용자는 예측성 디폴트가 최신도 또는 빈도중 어느 하나에만 의존하기 때문에 너무 자주 변화하지 않는 예측성 디폴트를 더 선호할 것이라는 것을 예상할 수 있다. 반면, 예측성 기입은 빈도/최신도 밸런스를 이용할 가능성이 보다 높다.
예측성 기입을 더욱 유용하게 만들 수 있는 몇몇의 구현예가 있다. 만약 필드에 대한 예측성 디폴트가 거절되면, 예측성 디폴트값은 예측성 기입에 의해 다시 제시되어서는 안된다. 가령, 만약 상기 예측성 디폴트가 Charlotte이고 사용자가 C를 타이핑하면, 예측성 기입은 비록 샬러트가 더 바람직하더라도 Charlotte 대신에 Chapel Hill을 제시할 것이다. 그 이유는 사용자가 이미 샬러트를 거절했기 때문이다.
사용자는 예측성 기입(또는 예측성 디폴트)를 받아들여서 문자들 중 일부만을 사용할 수 있다. 가령, 사용자가 Chapel Hill을 기입하고자 한다고 가정할 때, 문자 C를 기입하는 순간 예측성 기입은 Charlotte을 제시한다. 사용자는 Chapel Hill이 제시될 때까지 H, A, P를 입력할 필요는 없다. 대신에, 사용자는 Charlotte의 R로 이동하여, 여기에 P를 입력할 수 있다.
예측성 기입은 그 리스트에 몇몇의 상위 항목(top items)을 디스플레이할 수 있다. 사용자가 문자를 타이핑할 때, 예측성 기입은 가장 가능성있는 값으로 필드를 완성할 수 있다. 그러나, 예측성 필드는 또한 스크린상에 리스트의 가장 가능성있는 상위 5개의 값을 디스플레이한다. 이 리스트는 사용자가 입력한 각각의 문자로 갱신된다. 사용자는 상기 리스트로부터 임의의 값을 선택할 수 있다. 예측성 기입은 사용자가 임의의 것을 타이핑하기 전일지라도 상기 리스트를 디스플레이할 수 있지만, 이 필드는 여전히 예측성 디폴트를 포함하고 있다. 이러한 동작의 일예는 도 11에 도시되는데, 여기서 예측성 기입 리스트는 키보드 디스플레이의 좌측에 디스플레이된다. 예측성 기입은 완전한 필드 뿐만 아니라 서브필드상에서 동작할 수 있다. 도 9의 성명필드에서, 이름(first name) 및 성(last name)은 완전히 분리된 예측성 리스트를 가질 수 있다. 예측성 기입은 필드의 어느 부분이 입력될 것으로 여겨지는지에 따라 통상적인 이름(가령, John) 또는 통상적인 성(가령, Smith)을 제시한다. 이러한 실시예에서, 공백(a space)이 이름과 성의 두 서브필드들을 분리한다. 코멘트필드에 대해, 마침표(a period)가 서브필드를 분리할 수 있고 예측성 기입은 문장을 기억해 낼 것이다.
예측성 리스트는 필드(또는 서브필드) 또는 프로그램 개발자에 의해 설정된 유사한 사전결정된 리스트에 대해 시간을 통해 누적된 후보자 모임이다. 필드의 예측성 디폴트 및 예측성 기입은 동일한 예측성 리스트를 사용하지만, 보통 상이한 빈도/최신도 밸런스를 갖는 예측성 리스트를 사용한다. 바람직하게, 예측성 리스트는 동적이며, 사용자가 필드를 포함하는 서식을 완성할 때마다 변화한다.
예측성 리스트는 몇가지 방법으로 정렬(sort)된 항목을 갖는 리스트들을 동시에 유지한다. 이러한 것들은 빈도(이 항목이 얼마나 자주 사용되는가?), 최신도(이 항목이 각각 사용된 후 얼마나 지났는가?), 사전설정된 가중화도(이전에 항목들이 사용된 적이 없다면, 즉 빈도 또는 최신도 이력이 없다면 어느 것이 가장 적합한가)를 포함한다. 이러한 정렬은 알파벳적인 특성(alphabetically)을 포함할 수 있다. 알파벳 필드 혹은 텍스트 필드에 대해, 예측 리스트는 사용자가 입력하는 문자로 시작하는 항목으로 탐색(search)을 제한해야 한다.
예측성 리스트가 커지면, 방금 사용되었거나 사용된 이후 리스트 정렬(sort)하는 데에 성능상의 문제를 야기한다. 배경에서 정렬을 수행하기 위해서는 멀티태스킹 시스템을 이용할 필요가 있다. 만약 정렬(sorting) 알고리즘이 종료되기 전에 인터럽트되면, 예측성 리스트는 완성한(알파벳 만을 강제로 이용한) 정렬만을 사용하여 기능을 수행할 수 있어야 한다. 이러한 것은 사용자가 정렬 알고리즘이 종료할 때까지 대기하게 하는 편 보다는 보다 가능성이 적은 제시를 제공하는 편이 더 바람직하기 때문이다.
본 발명을 구현하는 서식 준비 프로그램은 정렬 알고리즘을 디스에이블시켜 새로운 엔트리의 부가를 중지시키는 고정(freeze) 기능을 제공하여, 상기 예측성 리스트를 고정시킨다. 시스템이 잠시동안 사용된 후, (정적인 환경을 가정하여) 빈도가 설정되고, 사용자는 예측성 리스트의 일부 또는 전부를 고정시킬 것을 선택할 수 있다. 사용자는 이러한 것을 다음의 두가지 이유로 인해 원할 수 있다. 첫째, 상기 예측성 리스트를 고정시키면, 시스템 성능이 개선된다. 둘째, 예측성 리스트를 고정시키면, 예측성 디폴트 및 예측성 기입 기능이 보다 일관성있게 되고 예측가능해진다. 가령, 동일 항목이 항상 예측성 기입 리스트의 동일 위치에 나타날 것이다. 고정되고 매우 적은 항목을 가진 예측성 리스트에 대해, 본 발명을 구현하는 서식 프로그램은 리스트의 키패드 뷰(view)를 갖는다. 리스트내의 항목들을 제공하는 대신, 서식은 자체적인 버튼내에 예측성 리스트의 각 항목을 디스플레이한다. 항목들이 더욱 대형이고 그들 사이의 공백이 더 넓어, 상기 예측성 리스트를 보다 용이하게 사용할 수 있다.
몇몇의 필드는 공통의 예측성 리스트를 공유할 수 있다. 가령, 서식상의 성명에 대한 필드가 하나 이상 존재한다면, 이 필드들은 성명들에 대해 동일한 예측성 리스트를 공유할 것이다. 또한, 완전히 상이한 서식상의 필드들이 예측성 리스트를 공유할 수도 있다.
예측성 리스트는 부가적인 서식 저장에 대한 필요성을 제거할 수 있다. 만약 서식이 완전히 예측성 위제트들로 이루어지면, 사용자가 입력한 각 서식의 내용들을 예측성 리스트들을 조합함으로써 기억해 낼 수 있다. 가령, 만약 도 9의 모든 위제트들이 예측성 위제트들이라면, n 번 이전의 엔트리로부터의 서식 내용은 각 위제트의 예측성 리스트의 n 번째 항목을 기억해 냄으로써 복구된다. 이러한 작업 체계에 대해, 사용자 인터페이스가 예측성 리스트를 이용하지 않을 경우에도 모든 위제트들은 예측성 리스트를 갖는 예측성 위제트들이어야 한다. 또한, 예측성 리스트는, 내부에 항목이 가득 차게 된 경우, 항목들이 다른 위치에 저장되지 않거나 더 이상 필요없게 되지 않는 때에는 항목들위에 중복기록(overwriting)해서는 안된다.
본 발명에 따라 구현되는 제어 프로그램이 모듈로 되어 있어서, 개발자는 임의의 구성요소에 액세스할 수 있다. 개발자는 예측성 위제트들을 전적으로 사용하지 않고도 예측성 디폴트 및 예측성 기입 객체(object)들을 사용할 수 있다. 이러한 것은 본 발명자가 예상하지 못한 다른 타입의 위제트들을 개발하는데 유용하다. 또한, 개발자는 데이타를 직접 기억해 내기 위해 예측성 리스트 객체들을 사용할 수 있다. 또한, 예측성 리스트들은 일반적인 서식 저장장치와 데이타를 공유할 수 있다.
도 12는 최신도에 의해 정렬된 예측성 리스트의 일예를 도시하고 있다. 도면에서, n은 최신도를 나타내는 것으로, 가장 최근의 엔트리에 대해서는 n=0이고, 최초 엔트리에 대해서는 n=9이다. 괄호의 항목들은 보다 최근에 입력된 항목들의 새도우(shadows)이며, 별도의 저장장치를 필요로 하지 않는다. 가령, 항목 0은 텍스트 Champion을 저장하지만, 항목 2는 항목 0에 대한 포인터만을 저장한다.
각 항목의 확률적인 가중치는 소문자 w로 주어진다. (새도우의 W를 조합하는) 주어진 스트링의 가중치는 대문자 W로 주어진다. w는 다음의 수학식 1에 의해 계산된다.
[수학식 1]
여기서, b는 빈도/최신도 밸런스이다. 만약 b가 작다면, 밸런스는 최신도 쪽으로 기운다. 만약 b가 크다면, 상기 밸런스는 빈도 쪽으로 기운다. 새도우되지 않은 각 항목에 대해, 가중치는 다음의 수학식 2에 의해 결정된다.
[수학식 2]
따라서, 새도우되지 않은 전체 가중치는 각각의 가중치에 각각의 새도우를 합산한 값이다. 표는 1, 4, 10의 밸런스에 대한 가중치를 나타낸다. b=1은 최신도에 대한 가장 강한 선호도를 나타낸다. 사용자가 최근 Champion을 두번 입력했으므로 Champion이 가장 높은 확률을 갖는다(W=1.33). b가 0에 접근함에 따라, 가장 최근의 항목이 항상 w=1이고 후속하는 W들이 빠르게 감소하기 때문에 완전히 최신도의 주도하에 있게 된다는 것에 유의해야 한다. b=10 은 빈도가 가장 우세한 것을 나타낸다. 사용자가 Brittenham을 어느것보다도 자주 입력함에 따라, Brittenham이 가장 높은 확률을 가지게 된다(W=2.96). b가 무한대로 접근함에 따라, 각 항목이 w=1을 가지기 때문에 완전히 빈도의 주도하에 있게 된다는 것에 유의해야 한다. 최신도는 단지 타이브레이커이다. b=4는 Bertram을 가장 확률이 높은 것으로 제시하는 빈도와 최신도 사이의 밸런스를 나타낸다. 사용자는 최근에 Bertram을 세번 입력했다. 사용자가 Champion을 더욱 최근에 입력했지만, 단지 두번 입력했을 뿐이며, 사용자는 Brittenham을 더욱 빈번히 입력했지만 오래전에 입력했다. 예측성 리스트는 이러한 최신도 및 빈도의 조합에 의해 Brittenham을 제시한다.
명백한 바이지만, b의 값이 다양하기 때문에 발생하는 효과는 예측성 리스트의 사이즈에 따라 달라진다. 따라서, 개발자는 이러한 알고리즘으로 밸런스를 설정할 때, 예측성 리스트의 사이즈를 고려해야만 한다.
이름으로 지칭되는 텍스트 엔트리 필드는 b=1의 예측성 디폴트와 b=10의 예측성 기입을 갖는다고 가정한다. 전술한 표에서의 예측성 리스트 상태가 주어지면, b=1인 경우에 Champion이 가장 높은 가중치를 가지기 때문에 필드에 대한 디폴트는 Champion이다. 만약 사용자가 문자 B를 타이핑하면, 예측성 기입은 Bertram 대신에 Brittenham을 제시하는데 그 이유는 전자가 b=10 인 경우 더 높은 가중치를 가지기 때문이다.
이러한 알고리즘은 본 발명의 단지 한 구현예이다. 특히, w를 계산하기 위한 더욱 정교한 수학식이 적절할 수 있다. 가령, 밸런스는 예측성 리스트의 사이즈에 무관하게 일관성있게 동작하는 절대적인 값이어야 한다. 이 알고리즘은 사용자에 의한 각 동작 후 정렬 동작을 감소시킴으로써 저장량을 감소시키고 성능을 높이도록 더욱 최적화될 수 있다.
본 발명에 따르면, 예측성 리스트내에 제공되는 이용가능한 데이타는 전술한 밸런스 방식과는 다른 방식으로 최신도 및 빈도 특성에 참여할 수 있다. 특히, 임의의 이용가능한 갯수, 가령, 10개 엔트리의 예측성 리스트를 고려하면, 순차적인 리스트의 초기의 임의의 위치들의 갯수는 단지 최신도 결정만을 위해 할당될 수 있다. 리스트의 나머지는 단지 빈도에 기초하여 할당된 시퀀스 위치의 엔트리를 가질 수 있다. 따라서, 예측성 기입 또는 예측성 디폴트에 대한 리스트를 디스플레이할 때, 디스플레이되는 최초 엔트리는 사용자에 의해 선택된 가장 최근의 엔트리에 근거를 두고 있을 것이지만, 디스플레이되는 리스트의 보다 아래부분의 엔트리는 엔트리들이 과거의 애플리케이션 사용동안 선택된 빈도에 기초하여 디스플레이될 것이다. 최신도와 빈도 사이의 경계선(parting line)은 사용자에 의해 결정된다. 따라서, 10개의 엔트리 리스트 일예에서, 사용자는 최신도에 근거하여 디스플레이되는 최초 3개의 위치와, 빈도에 근거하여 4내지 10개의 위치를 가지도록 선택할 수 있다. 따라서, 리스트의 각각을 재정렬(resorting)하면, 가장 최근에 사용된 엔트리가 바로 이전에 선택된 엔트리위의 제 1 위치에 디스플레이될 수 있을 것이다.
최신 및 빈번한 엔트리를 처리하는 이러한 방법은 여러가지의 장점을 갖는다. 이러한 것은 일반적으로 적용되어, 애플리케이션 개발자는 각 텍스트 위제트에 대한 최상의 빈도 및 최신도 특성을 더 이상 결정할 필요는 없다. 애플리케이션에서의 모든 텍스트 위제트들은 동일한 알고리즘을 사용할 수 있어서, 사용자는 어떠한 동작이 기대될 것인지를 알 수 있다. 위제트 간의 알고리즘의 일관성에 따라, 사용자는 한 엔트리에서 다음 엔트리까지 어떠한 것이 발생할 것인지를 용이하게 이해할 수 있다. 계산이 단순화됨에 따라, 시스템 성능에 대한 부정적 영향이 감소된다. 각 엔트리에 대한 최신 데이타의 저장이 방지되고 빈번한 데이타가 각 항목에 대해 지속적으로 저장됨에 따라, 시스템 메모리에 대한 요구사항은 감소되지만, 최신도는 최종 n개 항목들(앞에서 주어진 실시예에서 n=3)에 대한 짧은 포인터 리스트에 의해 처리된다.
지금까지 기술된 방법은 이동 클라이언트 컴퓨터 시스템의 경우에 유용한 서식 기입 위제트 뿐만 아니라 서식을 완성하는데 필요한 것을 제공할 수 있는 다른 타입의 시스템에도 적용가능하다. 본 발명이 이용할 수 있는 다른 시스템의 일예들은 1996년 7월 23일에 특허된 미국 특허 제 5,539,479호에 기술되고 있다.
본 발명의 뚜렷한 특징을 더욱 상세히 참조하면, 본 발명은 사용자의 입력을 예측하기 위해 가능성있는 엔트리 리스트를 이용하는 임의의 서식 시스템에 관련된다. 이 리스트는 사용자 또는 다른 사용자에 의한 이전 엔트리의 레코드를 포함할 수 있다. 이 리스트는 서식 설계자에 의해 예상된 엔트리를 포함할 수 있다. 텍스트 엔트리 위제트의 경우, 이 위제트가 알파벳, 즉 엔트리의 빈도 및 최신도에 따라 제 1 일치 엔트리를 제시할 수 있도록 이 리스트가 알파벳화될 수 있다.
본 발명에 따르면, 상기 리스트는 이를 사용하는 시스템들 사이에서 복제될 수 있다. 또한, 본 발명에 따르면, 여러개의 리스트들을 단일의 리스트로 조합할 수 있다.
가령, 서버로 지칭되는 고정의 데이타 저장 컴퓨터 시스템(도 3에서 20으로 도시됨)과 주기적으로 통신하는 이동 클라이언트 컴퓨터 시스템을 가정하자. 다른 몇몇 클라이언트들도 또한 서버와 통신한다. (특정한 창고 또는 도시의 한 부분과 같은)특정의 환경하에서, 사용자는 (저장소의 항목 또는 거리 이름과 같은) 이러한 환경에 대해 공통인 예측성 엔트리 리스트를 발생시킬 수 있다. 다음에, 이 시스템은 사용자가 발생한 리스트를 사용자 클라이언트로부터 서버로 복제한다. 약간의 시간이 경과한 후, 제 2 사용자가 동일한 환경을 입력한다. 이 시스템은 상기 저장된 리스트를 서버로부터 제 2 사용자 클라이언트로 복제한다. 제 2 사용자 클라이언트는 제 2 사용자의 엔트리를 보다 정확하게 예측할 수 있어서, 제 1 사용자의 경험을 이용할 수 있게 된다.
본 발명에 따른 이동 클라이언트 시스템은, 시스템 하우징내에 제공된 회로에 포함되거나 또는 전술한 바와 같은 PCCard와 같은 액세서리에 의해 제공된 전역 위치파악 위성 수신 장치(Global Positioning Satellite receiver)의 형태내에 위치 감지 회로를 포함할 수 있어서, 사용자의 위치를 결정하고 데이타 저장 장치로부터 적당한 리스트를 요청하여 복제하거나 다운로드할 수 있다.
몇몇 사용자들이 동일 환경에서 작업을 수행해 왔다면, 데이타 저장 시스템은 그들 예측성 리스트들을 이후의 사용을 위해 하나의 리스트로 조합할 것이다. 이러한 조합은 클라이언트에 의해 사용되는 예측성 기법의 타입에 의존하는 정렬 알고리즘을 사용하여 행해진다. 가령, 알파벳 정렬(alphabetic sort)은 리스트를 조합하기에는 충분하다. 그러나, 전술한 동반 출원 RP9-95-017에서 참조되는 타입의 리스트들은 빈도 및 최신도의 정렬도 필요로 한다.
본 명세서에 기술된 기법에 따르면, 사용자는 클라이언트 시스템으로 상기 리스트를 발생할 필요가 없다. 애플리케이션 개발자는 만약 사용자 환경에 대한 충분한 지식만 가진다면 이러한 리스트를 발생시킬 수 있다. 본 발명은 리스트가 피어 투 피어(peer-to-peer) 방식으로 복제되기 때문에 서버를 필요로 하지 않는다. 클라이언트는 내부적으로 다중 리스트를 저장할 수 있고 사용자가 다른 환경을 입력할 수 있기 때문에 리스트들 간에서 교환가능하다. 컴퓨터 시스템들 간의 통신은 1996년 7월 10일 출원된 미국 특허 출원 제 08/678, 017호에 개시된다.
본 발명의 바람직한 실시예는 도면 및 상세한 설명에서 특정의 전문기술 용어를 사용하여 기술되고 있지만 그러한 용어는 일반적인 서술적인 의미로만 사용될 뿐이지 제한 목적의 의미로 사용되는 것은 아니다.

Claims (20)

  1. 정보 처리 시스템에 있어서,
    A) A1) 손에 쥘 수 있는 사이즈를 가지며 사용자의 손에 의해 조작되는 하우징(a housing)과,
    A2) 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 클라이언트 프로세서와,
    A3) 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 클라이언트 프로세서에 접속되는 클라이언트 메모리와,
    A4) 상기 하우징내에 장착되고 상기 프로세서 및 메모리에 접속되어, 상기 클라이언트 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    A5) 상기 클라이언트 프로세서에 접속되어 사용자에 의한 디지탈 데이타를 입력하기 위한 입력 디지타이저―상기 디지타이저는 상기 하우징내에 장착되며 상기 디스플레이상에 놓임―와,
    A6) 상기 클라이언트 메모리에 저장되고 상기 클라이언트 프로세서에 의해 액세스가능하며, 상기 클라이언트 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는 이동 클라이언트 컴퓨터 시스템과,
    B) B1) 저장 장치 프로세서와,
    B2) 상기 저장 장치 프로세서에 동작가능하게 접속되는 저장 장치 메모리와,
    B3) 상기 저장 장치 프로세서에 대해 액세스가능한 상기 저장 장치 메모리내에 저장되는 데이타 분배 프로그램을 포함하며,
    상기 분배 프로그램 및 상기 프로세서는 협력하여, 상기 저장 장치 프로세서에 의한 상기 분배 프로그램의 실행시에, 예측성 위제트의 부분을 정의하는 데이타를 제공하는 데이타 저장 장치 시스템과,
    C) 클라이언트 송수신기 및 저장 장치 송수신기―각각은 상기 클라이언트 시스템과 상기 저장 장치 시스템중 해당하는 하나에 동작가능하게 접속되고 상기 송수신기들은 함께 상기 클라이언트 시스템과 상기 저장 장치 시스템 사이에 있어서 상기 예측성 위제트의 부분이 교환되는 통신 채널을 정의함―를 포함하는
    정보 처리 시스템.
  2. 제 1 항에 있어서,
    상기 제어 프로그램과 상기 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때, 예측성 리스트를 저장하고,
    상기 분배 프로그램과 상기 저장 장치 프로세서는 협력하여, 상기 분배 프로그램이 상기 저장 장치 프로세서상에서 실행될 때, 예측성 리스트를 저장하고,
    상기 클라이언트 시스템과 상기 저장 장치 시스템은 상기 통신 채널을 통해 저장된 예측성 리스트들을 교환하는 정보 처리 시스템.
  3. 제 1 항에 있어서,
    상기 제어 프로그램과 상기 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때, 상기 정의된 필드내로 입력될 사용자 데이타 엔트리를 획득하고, 상기 예측성 리스트내에 획득된 엔트리를 저장하며,
    상기 클라이언트 시스템은 상기 예측성 리스트를 상기 통신 채널을 통해 상기 저장 장치 시스템에 전송하는 정보 처리 시스템.
  4. 제 1 항에 있어서,
    상기 데이타 저장 장치 시스템은 서버 및 보조 데이타 저장 장치인 정보 처리 시스템.
  5. 제 1 항에 있어서,
    상기 데이타 저장 장치 시스템은 제 2 이동 클라이언트 컴퓨터 시스템인 정보 처리 시스템.
  6. 제 1 항에 있어서,
    상기 이동 클라이언트 시스템은 위치 감지 회로를 가지며,
    상기 이동 클라이언트 컴퓨터 시스템은 상기 저장 장치 시스템으로부터 제 2 사용자 영역과 관련한 예측성 위제트 부분을 요청 및 복제함으로써 제 1 사용자 영역에서 상기 제 2 사용자 영역까지 감지된 재배치에 응답하는 정보 처리 시스템.
  7. 정보 처리 시스템에 있어서,
    A) A1) 손에 쥘 수 있는 사이즈를 가지며 사용자의 손에 의해 조작되는 하우징과,
    A2) 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 클라이언트 프로세서와,
    A3) 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 클라이언트 프로세서에 접속되는 클라이언트 메모리와,
    A4) 상기 하우징내에 장착되고 상기 프로세서 및 메모리에 접속되어, 상기 클라이언트 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    A5) 상기 클라이언트 프로세서에 접속되어 사용자에 의한 디지탈 데이타를 입력하기 위한 입력 디지타이저―상기 디지타이저는 상기 하우징내에 장착되며 상기 디스플레이상에 놓임―와,
    A6) 상기 클라이언트 메모리에 저장되고 상기 클라이언트 프로세서에 의해 액세스가능하며, 상기 클라이언트 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는 제 1 이동 클라이언트 컴퓨터 시스템과,
    B) B1) 손에 쥘 수 있는 사이즈를 가지며 사용자의 손에 의해 조작되는 하우징과,
    B2) 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 클라이언트 프로세서와,
    B3) 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 클라이언트 프로세서에 접속되는 클라이언트 메모리와,
    B4) 상기 하우징내에 장착되고 상기 프로세서 및 메모리에 접속되어, 상기 클라이언트 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    B5) 상기 클라이언트 프로세서에 접속되어 사용자에 의한 디지탈 데이타를 입력하기 위한 입력 디지타이저―상기 디지타이저는 상기 하우징내에 장착되며 상기 디스플레이상에 놓임―와,
    B6) 상기 클라이언트 메모리에 저장되고 상기 클라이언트 프로세서에 의해 액세스가능하며, 상기 클라이언트 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는 제 2 이동 클라이언트 컴퓨터 시스템과,
    C) C1) 저장 장치 프로세서와,
    C2) 상기 저장 장치 프로세서에 동작가능하게 접속되는 저장 장치 메모리와,
    C3) 상기 저장 장치 프로세서에 대해 액세스가능한 상기 저장 장치 메모리내에 저장되는 데이타 분배 프로그램을 포함하며,
    상기 분배 프로그램 및 상기 프로세서는 협력하여, 상기 저장 장치 프로세서에 의한 상기 분배 프로그램의 실행시에 예측성 위제트의 부분을 정의하는 데이타를 제공하는 데이타 저장 장치 시스템과,
    D) 제 1 및 제 2 클라이언트 송수신기와 저장 장치 송수신기―각각은 상기 제 1 및 제 2 클라이언트 시스템과 상기 저장 장치 시스템중 해당하는 하나에 동작가능하게 접속되고 상기 송수신기들은 함께 상기 클라이언트 시스템들과 상기 저장 장치 시스템 사이에 있어서 상기 예측성 위제트의 부분이 교환되는 통신 채널을 정의함―를 포함하는 정보 처리 시스템.
  8. 제 7 항에 있어서,
    상기 예측성 위제트의 부분은 상기 클라이언트 시스템들중의 한 클라이언트 시스템에서 다른 클라이언트 시스템으로 교환되는 정보 처리 시스템.
  9. 제 7 항에 있어서,
    상기 예측성 위제트의 부분은 상기 한 클라이언트 시스템으로부터 상기 저장 장치 시스템에 의해 수신되며, 상기 다른 클라이언트 시스템으로 상기 저장 장치 시스템에 의해 분배되는 정보 처리 시스템.
  10. 제 7 항에 있어서,
    상기 예측성 위제트의 부분은 상기 각각의 클라이언트 시스템으로부터 상기 저장 장치 시스템에 의해 수신되며,
    상기 분배 프로그램과 상기 저장 장치 프로세서는 협력하여, 상기 분배 프로그램이 상기 저장 장치 프로세서상에서 실행될 때, 상기 클라이언트 시스템들로부터 수신된 예측성 위제트의 부분들을 단일의 데이타 요소로 병합하는 정보 처리 시스템.
  11. 정보 처리 시스템에 있어서,
    A) 1) 하우징과,
    A2) 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 클라이언트 프로세서와,
    A3) 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 클라이언트 프로세서에 접속되는 클라이언트 메모리와,
    A4) 상기 프로세서 및 메모리에 접속되어, 상기 클라이언트 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    A5) 상기 클라이언트 메모리에 저장되고 상기 클라이언트 프로세서에 의해 액세스가능하며, 상기 클라이언트 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 상기 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는 컴퓨터 시스템과,
    B) 1) 저장 장치 프로세서와,
    B2) 상기 저장 장치 프로세서에 동작가능하게 접속되는 저장 장치 메모리와,
    B3) 상기 저장 장치 프로세서에 대해 액세스가능한 상기 저장 장치 메모리내에 저장되는 데이타 분배 프로그램을 포함하며,
    상기 분배 프로그램 및 상기 프로세서가 상기 저장 장치 프로세서에 의한 상기 분배 프로그램의 실행시에 예측성 위제트의 부분을 정의하는 데이타를 제공하는 것에 협력하는 데이타 저장 장치 시스템과,
    C) 클라이언트 송수신기 및 저장 장치 송수신기―각각은 상기 클라이언트 시스템과 상기 저장 장치 시스템중 해당하는 하나에 동작가능하게 접속되고 상기 송수신기들은 함께 상기 클라이언트 시스템과 상기 저장 장치 시스템 사이에 있어서 상기 예측성 위제트의 부분이 교환되는 통신 채널을 정의함―를 포함하는 정보 처리 시스템.
  12. 제 11 항에 있어서,
    상기 제어 프로그램과 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때, 예측성 리스트를 저장하고,
    상기 분배 프로그램과 저장 장치 프로세서는 협력하여, 상기 분배 프로그램이 상기 저장 장치 프로세서상에서 실행될 때, 예측성 리스트를 저장하고,
    상기 클라이언트 시스템과 저장 장치 시스템은 상기 통신 채널을 통해 저장된 예측성 리스트들을 교환하는 정보 처리 시스템.
  13. 제 11 항에 있어서,
    상기 제어 프로그램과 클라이언트 프로세서는 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때, 상기 정의된 필드내로 입력될 사용자 데이타 엔트리를 획득하고, 상기 예측성 리스트내에 획득된 엔트리들을 저장하며,
    상기 클라이언트 시스템은 상기 통신 채널을 통해 상기 저장 장치 시스템에 상기 예측성 리스트를 전송하는 정보 처리 시스템.
  14. 제 11 항에 있어서,
    상기 데이타 저장 장치 시스템은 서버 및 보조 데이타 저장 장치인 정보 처리 시스템.
  15. 제 11 항에 있어서,
    상기 데이타 저장 장치 시스템은 제 2 이동 클라이언트 컴퓨터 시스템인 정보 처리 시스템.
  16. 제 11 항에 있어서,
    상기 이동 클라이언트 컴퓨터 시스템은 위치 감지 회로를 가지며,
    상기 이동 클라이언트 컴퓨터 시스템은 상기 저장 장치 시스템으로부터 제 2 사용자 영역과 관련한 예측성 위제트 부분을 요청 및 복제함으로써 제 1 사용자 영역에서 상기 제 2 사용자 영역까지 감지된 재배치에 응답하는 정보 처리 시스템.
  17. 정보 처리 시스템에 있어서,
    A) 1) 하우징과,
    A2) 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 클라이언트 프로세서와,
    A3) 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 클라이언트 프로세서에 접속되는 클라이언트 메모리와,
    A4) 상기 프로세서 및 메모리에 접속되어, 상기 클라이언트 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    A5) 상기 클라이언트 메모리에 저장되고 상기 클라이언트 프로세서에 의해 액세스가능하며, 상기 클라이언트 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는 제 1 컴퓨터 시스템과,
    B) 1) 하우징과,
    B2) 상기 하우징내에 장착되어 디지탈 데이타를 처리하기 위한 클라이언트 프로세서와,
    B3) 상기 하우징내에 장착되어 디지탈 데이타를 저장하며 상기 클라이언트 프로세서에 접속되는 클라이언트 메모리와,
    B4) 상기 프로세서 및 메모리에 접속되어, 상기 클라이언트 프로세서에 의해 처리된 디지탈 데이타로부터 도출되는 정보를 디스플레이하는 디스플레이와,
    B5) 상기 클라이언트 메모리에 저장되고 상기 클라이언트 프로세서에 의해 액세스가능하며, 상기 클라이언트 프로세서에 의한 디지탈 데이타의 처리를 지시하는 제어 프로그램을 포함하며,
    상기 제어 프로그램 및 클라이언트 프로세서는 협력하여, 상기 제어 프로그램이 상기 클라이언트 프로세서상에서 실행될 때,
    a) 데이타 필드를 정의하는 서식을 디스플레이하고,
    b) 상기 정의된 데이타 필드에 대해 데이타 엔트리를 제공하도록 예측성 위제트를 실행하는 제 2 컴퓨터 시스템과,
    C) 1) 저장 장치 프로세서와,
    C2) 상기 저장 장치 프로세서에 동작가능하게 접속되는 저장 장치 메모리와,
    C3) 상기 저장 장치 프로세서에 대해 액세스가능한 상기 저장 장치 메모리내에 저장되는 데이타 분배 프로그램을 포함하며,
    상기 분배 프로그램 및 상기 프로세서는 협력하여, 상기 저장 장치 프로세서에 의한 상기 분배 프로그램의 실행시에 예측성 위제트의 부분을 정의하는 데이타를 제공하는 데이타 저장 장치 시스템과,
    D) 제 1 및 제 2 클라이언트 송수신기와 저장 장치 송수신기―각각은 상기 제 1 및 제 2 클라이언트 시스템과 상기 저장 장치 시스템중 해당하는 하나에 동작가능하게 접속되고 상기 송수신기들은 함께 상기 클라이언트 시스템들과 상기 저장 장치 시스템 사이에 있어서 상기 예측성 위제트의 부분이 교환되는 통신 채널을 정의함―를 포함하는 정보 처리 시스템.
  18. 제 17 항에 있어서,
    상기 예측성 위제트의 부분은 상기 클라이언트 시스템들중의 한 클라이언트 시스템에서 다른 클라이언트 시스템으로 교환되는 정보 처리 시스템.
  19. 제 17 항에 있어서,
    상기 예측성 위제트의 부분은 상기 한 클라이언트 시스템으로부터 상기 저장 장치 시스템에 의해 수신되며, 상기 다른 클라이언트 시스템으로 상기 저장 장치 시스템에 의해 분배되는 정보 처리 시스템.
  20. 제 17 항에 있어서,
    상기 예측성 위제트의 부분은 상기 각각의 클라이언트 시스템으로부터 상기 저장 장치 시스템에 의해 수신되며,
    상기 분배 프로그램과 저장 장치 프로세서는 협력하여, 상기 분배 프로그램이 상기 저장 장치 프로세서상에서 실행될 때, 상기 클라이언트 시스템들로부터 수신된 예측성 위제트의 부분들을 단일의 데이타 요소로 병합하는 정보 처리 시스템.
KR1019970029750A 1996-08-22 1997-06-30 정보처리시스템 KR100288492B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/706,990 US5805158A (en) 1996-08-22 1996-08-22 Copying predicted input between computer systems
US8/706,990 1996-08-22

Publications (2)

Publication Number Publication Date
KR19980018170A true KR19980018170A (ko) 1998-06-05
KR100288492B1 KR100288492B1 (ko) 2001-05-02

Family

ID=24839911

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970029750A KR100288492B1 (ko) 1996-08-22 1997-06-30 정보처리시스템

Country Status (7)

Country Link
US (1) US5805158A (ko)
EP (1) EP0825516B1 (ko)
JP (1) JP3893196B2 (ko)
KR (1) KR100288492B1 (ko)
CN (1) CN1142500C (ko)
DE (1) DE69740172D1 (ko)
TW (1) TW439038B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100771528B1 (ko) * 2000-09-15 2007-10-31 톰슨 라이센싱 핸드-헬드 디바이스와, 인터넷 데이터를 멀티미디어 홈 디바이스에 송신하는 방법

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6499041B1 (en) * 1998-12-29 2002-12-24 International Business Machines Corporation Methods, systems and computer program products for copying between templates having associated field designations
DE60003177T2 (de) * 1999-03-18 2004-05-06 602531 British Columbia Ltd., Vancouver Dateneingabe für personalrechnergeräte
US7293231B1 (en) * 1999-03-18 2007-11-06 British Columbia Ltd. Data entry for personal computing devices
CA2323856A1 (en) * 2000-10-18 2002-04-18 602531 British Columbia Ltd. Method, system and media for entering data in a personal computing device
US7778920B2 (en) 2001-03-20 2010-08-17 American Express Travel Related Services Company, Inc. Method and apparatus for providing pre-existing and prospective customers with an immediately accessible account
EP1256875A1 (en) * 2001-05-10 2002-11-13 Nokia Corporation Method and device for context dependent user input prediction
US7515137B2 (en) * 2001-07-16 2009-04-07 Intel Corporation Software-based number lock
US8689096B2 (en) 2001-11-19 2014-04-01 Hewlett-Packard Development Company, L.P. Computer-based method, software module and computer program product for processing information in transaction-tax related applications
US8190989B1 (en) * 2003-04-29 2012-05-29 Google Inc. Methods and apparatus for assisting in completion of a form
US20050221791A1 (en) * 2004-04-05 2005-10-06 Sony Ericsson Mobile Communications Ab Sensor screen saver
US20060129539A1 (en) * 2004-12-09 2006-06-15 Masashi Nakatomi Information processing device and method thereof
US7483692B2 (en) 2004-12-28 2009-01-27 Sony Ericsson Mobile Communications Ab System and method of predicting user input to a mobile terminal
US8552984B2 (en) * 2005-01-13 2013-10-08 602531 British Columbia Ltd. Method, system, apparatus and computer-readable media for directing input associated with keyboard-type device
US20070094257A1 (en) * 2005-10-25 2007-04-26 Kathy Lankford File management
CA2581824A1 (en) * 2007-03-14 2008-09-14 602531 British Columbia Ltd. System, apparatus and method for data entry using multi-function keys
US8365089B2 (en) 2007-12-17 2013-01-29 International Business Machines Corporation Automatic defaults proxy for web-delivered services
US9069575B2 (en) 2008-03-25 2015-06-30 Qualcomm Incorporated Apparatus and methods for widget-related memory management
US9110685B2 (en) 2008-03-25 2015-08-18 Qualcomm, Incorporated Apparatus and methods for managing widgets in a wireless communication environment
US9269059B2 (en) 2008-03-25 2016-02-23 Qualcomm Incorporated Apparatus and methods for transport optimization for widget content delivery
US9747141B2 (en) 2008-03-25 2017-08-29 Qualcomm Incorporated Apparatus and methods for widget intercommunication in a wireless communication environment
US9600261B2 (en) 2008-03-25 2017-03-21 Qualcomm Incorporated Apparatus and methods for widget update scheduling
US20100131874A1 (en) * 2008-11-26 2010-05-27 General Electric Company Systems and methods for an active listener agent in a widget-based application
US8378856B2 (en) 2010-06-29 2013-02-19 At&T Intellectual Property I, L.P. Method and system for predictive human interface
US20120023214A1 (en) * 2010-07-21 2012-01-26 Openpeak Inc. System and method for state transition of a load controller device
US10409892B2 (en) 2011-01-26 2019-09-10 Microsoft Technology Licensing, Llc Formatting data by example
US20130191714A1 (en) * 2012-01-25 2013-07-25 Microsoft Corporation Fill by example animation and visuals
US10228819B2 (en) 2013-02-04 2019-03-12 602531 British Cilumbia Ltd. Method, system, and apparatus for executing an action related to user selection
US10229101B2 (en) 2013-06-14 2019-03-12 Microsoft Technology Licensing, Llc Smart fill
US10824799B2 (en) 2014-06-30 2020-11-03 Microsoft Technology Licensing, Llc Summary data autofill
US10922481B2 (en) * 2019-06-14 2021-02-16 International Business Machines Corporation Visual user attention redirection while form filling to enhance auto-fill accuracy

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4330845A (en) * 1979-12-31 1982-05-18 International Business Machines Corporation Guess-ahead feature for a keyboard-display terminal data input system
US4569421A (en) * 1980-11-17 1986-02-11 Sandstedt Gary O Restaurant or retail vending facility
US4969097A (en) * 1985-09-18 1990-11-06 Levin Leonid D Method of rapid entering of text into computer equipment
JPH02155033A (ja) * 1988-12-07 1990-06-14 Hitachi Ltd 帳票ソート制御方法およびデータ処理装置
US5230062A (en) * 1989-03-07 1993-07-20 Sanyo Electric Co., Ltd. Data processing apparatus and method for defining size and type of data field
US5187790A (en) * 1989-06-29 1993-02-16 Digital Equipment Corporation Server impersonation of client processes in an object based computer operating system
CA2025131A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
US5230047A (en) * 1990-04-16 1993-07-20 International Business Machines Corporation Method for balancing of distributed tree file structures in parallel computing systems to enable recovery after a failure
US5367619A (en) * 1990-04-27 1994-11-22 Eaton Corporation Electronic data entry system employing an expert system to facilitate generation of electronic data forms with complex interrelationships between fields and subforms
JPH04157563A (ja) * 1990-10-22 1992-05-29 Hitachi Ltd 帳票作成方法
DE69130392T2 (de) * 1991-07-10 1999-06-02 Ibm Hochgeschwindigkeitspufferverwaltung
US5210771A (en) * 1991-08-01 1993-05-11 Motorola, Inc. Multiple user spread-spectrum communication system
JP2927094B2 (ja) * 1992-01-23 1999-07-28 日本電気株式会社 電話装置
US5896532A (en) * 1992-06-15 1999-04-20 Lucent Technologies Inc. Objects with run-time classes and methods of making them
US5403639A (en) * 1992-09-02 1995-04-04 Storage Technology Corporation File server having snapshot application data groups
JPH06149791A (ja) * 1992-11-13 1994-05-31 Hitachi Ltd 漢字文章入力装置
US5465358A (en) * 1992-12-28 1995-11-07 International Business Machines Corporation System for enhancing user efficiency in initiating sequence of data processing system user inputs using calculated probability of user executing selected sequences of user inputs
JP3454536B2 (ja) * 1993-04-09 2003-10-06 シチズン時計株式会社 携帯型コンピュータ
JP3348386B2 (ja) * 1993-06-18 2002-11-20 ソニー株式会社 データベース検索装置
US5646632A (en) * 1994-11-14 1997-07-08 Lucent Technologies Inc. Method and apparatus for a portable communication device to identify its own location
US5960449A (en) * 1994-11-21 1999-09-28 Omron Corporation Database system shared by multiple client apparatuses, data renewal method, and application to character processors
JPH08161317A (ja) * 1994-12-01 1996-06-21 Omron Corp かな漢字変換装置及びかな漢字変換方法
US5666502A (en) * 1995-08-07 1997-09-09 Apple Computer, Inc. Graphical user interface using historical lists with field classes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100771528B1 (ko) * 2000-09-15 2007-10-31 톰슨 라이센싱 핸드-헬드 디바이스와, 인터넷 데이터를 멀티미디어 홈 디바이스에 송신하는 방법

Also Published As

Publication number Publication date
DE69740172D1 (de) 2011-05-26
TW439038B (en) 2001-06-07
EP0825516B1 (en) 2011-04-13
CN1177145A (zh) 1998-03-25
JPH10116170A (ja) 1998-05-06
EP0825516A2 (en) 1998-02-25
US5805158A (en) 1998-09-08
EP0825516A3 (en) 2001-07-04
JP3893196B2 (ja) 2007-03-14
CN1142500C (zh) 2004-03-17
KR100288492B1 (ko) 2001-05-02

Similar Documents

Publication Publication Date Title
KR100288492B1 (ko) 정보처리시스템
KR100255627B1 (ko) 이동 클라이언트 컴퓨터
KR100288493B1 (ko) 이동클라이언트컴퓨터컴퓨터및디스플레이발생시스템
US5943692A (en) Mobile client computer system with flash memory management utilizing a virtual address map and variable length data
US5812131A (en) Mobile client computer programmed to process table displays
US5784060A (en) Mobile client computer programmed to display lists and hexagonal keyboard
US6073136A (en) Mobile computer with minimized function display and maximized content display
US5801941A (en) Mobile client computer programmed to establish soft keyboard targeting sensitivity
US5964847A (en) Mobile client computer interacting with docking device
US5666502A (en) Graphical user interface using historical lists with field classes
EP0788630B1 (en) Handheld computer with automatic data synchronization with host computer
US5878276A (en) Handheld computer which establishes an input device as master over the CPU when it is coupled to the system
US6008810A (en) Mobile client computer programmed for system message display
US5790118A (en) Mobile client programmed to hide empty table elements
US5880724A (en) Mobile client computer programmed for importation of data into title display
Littlejohns The portable computer in psychiatry: experience with a Z88
JPH0418665A (ja) 小型電子機器

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130125

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20140127

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20150127

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20160203

Year of fee payment: 16