throbber
United States Patent (19)
`Lazarus et al.
`
`54 INTELLIGENTELECTRONIC PROGRAM
`GUIDE MEMORY MANAGEMENT SYSTEM
`AND METHOD
`76 Inventors: David Beryl Lazarus, 7852 Spring
`Ave., Elkins Park, Pa. 19027; Michael
`Dean Ellis, 1300 Kingwood Pl,
`Boulder, Colo. 80304
`
`56
`
`(21) Appl. No.: 476,451
`22 Filed:
`Jun. 7, 1995
`(51
`Int. Cl. .............. H04N 5/50; H04N 7/10
`(52) U.S. Cl. ............................. 348/7; 348/906; 348/569;
`348/460
`58 Field of Search ............................ 348/906, 7,564,
`348/569, 12, 13, 6,460; H04N 5/50, 7/10
`References Cited
`U.S. PATENT DOCUMENTS
`4,706,121 11/1987 Young ..................................... 358/.42
`4,751,578 6/1988 Reiter et al. ...
`... 348/906
`5,038,211
`8/1991 Hallenbeck .....
`... 348/460
`5,465,113 11/1995 Gilboy .......
`... 348/906
`5,532,754 7/1996 Young ........
`... 348/906
`5,559,548 9/1996 Davis et al. ...
`... 348/6
`B1 4,706,121 12/1993 Young .....................
`... 358/.42
`FOREIGN PATENT DOCUMENTS
`WO00670 1/1991 WIPO.
`WO14284 6/1994 WIPO.
`WO29811 12/1994 WIPO :
`
`US005652613A
`Patent Number:
`11
`45 Date of Patent:
`
`5,652,613
`Jul. 29, 1997
`
`OTHER PUBLICATIONS
`
`Cherricks, S. et al., “An Individually Addressable TV
`ReceiverWith Interactive Channel Guide Display, VCR, and
`Cable Box Control", IEEE Transactions on Consumer Elec
`tronics. vol. 40, No. 3, Aug. 1994, pp. 317–328.
`
`Primary Examiner Victor R. Kostak
`Attorney, Agent, or Firm-Weil, Gotshal & Manges LLP
`57
`ABSTRACT
`A television electronic program guide intelligent memory
`management system and method automatically deletes the
`least valuable stored program information at that moment as
`free memory space is needed by the system. In advance of
`a program schedule update, the system executes a two-level
`memory “housekeeping” operation in which the system first
`scans the memory to identify obsolete schedule information.
`If, after this sweep, there is insufficient memory available for
`the next update, the system performs a second-level memory
`"triage" operation wherein schedule information is auto
`matically prioritized in accordance with pre-defined rules for
`assessing the current value of the information to each viewer
`based on program air time, channel and other variables
`relating to program utility. The system then deletes schedule
`information in ascending order of value, starting with the
`least valuable information, and continues until enough space
`is available in memory to store the schedule update.
`
`14 Claims, 2 Drawing Sheets
`
`NTIALIZE
`HOUSEKEEPNG
`ROUTINE
`
`110
`
`FIND+DELETE L-120
`ExPRED
`RECORS
`
`MEMORY TRAGE” 140
`
`
`
`
`
`
`
`
`
`
`
`SUFFCENT
`FREE MEMORY
`
`NITIALIZE
`TRAGE
`
`coMPUTE
`SHOWING
`WALUES
`
`
`
`COMPUTE
`OA
`PROGRAM
`
`
`
`
`
`END
`HOUSEKEEPNG
`ROUNE
`
`WALUABLE
`INFO
`
`-1-
`
`Amazon v. Audio Pod
`US Patent 9,954,922
`Amazon EX-1077
`
`

`

`U.S. Patent
`
`Jul. 29, 1997
`
`Sheet 1 of 2
`
`5,652,613
`
`NITALIZE
`HOUSEKEEPNG
`ROUTINE
`
`-110
`
`
`
`
`
`FIND+DELETE L-120
`EXPRED
`RECORDS
`
`MEMORY "TRAGE” 140
`
`
`
`
`
`SUFFICIENT
`FREE MEMORY
`
`
`
`NTALIZE
`TRAGE
`
`COMPUTE
`SHOWING
`VALUES
`
`PROGRAM
`
`DELETE
`LEAST
`VALUABLE
`INFO
`
`
`
`
`
`
`
`SUFFCENT
`FREE MEMORY
`
`
`
`
`
`
`
`END
`HOUSEKEEPING
`ROUTINE
`
`FG.1
`
`-2-
`
`

`

`U.S. Patent
`
`Jul. 29, 1997
`
`Sheet 2 of 2
`
`5,652,613
`
`VARIABLE NAME
`time period
`time period
`time period
`channel value
`channel value
`channel value
`channel value
`hours away
`hours away
`hours away
`hours away
`
`|
`
`|
`
`|
`
`
`
`
`
`
`
`
`
`
`
`
`
`VALUE
`2
`3
`2
`2
`4
`16
`8
`4
`1
`
`FG.2
`
`||
`
`MEANING
`12AM-6AM
`6AM-7PMOPM2AM
`PM-10PM
`||
`normal
`favorite
`purchased
`purchased favorite
`0-6 hours
`||
`6-12 hours
`12-18 hours
`> 24 hours
`
`
`
`
`
`-3-
`
`

`

`1
`INTELLIGENT ELECTRONIC PROGRAM
`GUIDE MEMORY MANAGEMENT SYSTEM
`AND METHOD
`
`5,652,613
`
`2
`Accordingly, there is a need for an intelligent EPG
`memory management system which takes into account the
`differing utility of the various types of program information
`stored in the EPG so as to maximize the value of the EPG
`to the viewer. One proposed solution to this need is dis
`cussed in U.S. Pat. No. 5,038,211 to Hallenbeck (hereinafter,
`“Hallenbeck”). In the EPG system of Hallenbeck, schedule
`information is transmitted to the viewer in three separate
`transmissions, the first of which is used by a user-configured
`information pre-filter in the EPG to determine whether the
`information in the subsequent transmissions should be
`stored or discarded.
`This selective reception approach to EPG memory man
`agement has at least two drawbacks, however. First, the
`transmission of schedule information must be carried out
`using special protocols, which introduces complexity on the
`service provider's side of the EPG. A second drawbackis the
`pre-filter's inability to ascribe intermediate values of utility
`to program schedule information. By making an initial
`binary determination as to utility (valuable-store; not
`valuable-reject), the EPG of Hallenbeck may prevent
`potentially useful information from reaching the viewer.
`Moreover, the pre-filtering scheme of Hallenbeck does not
`take into account the fact that the value of program infor
`mation will in general vary over time, making a priori
`determinations about the future utility of information inap
`propriate in certain situations. In other words, to the extent
`the EPG of Hallenbeck makes a projection as to the future
`value of program information sent to the viewer when it is
`received, its pre-filtering scheme is likely to be overinclu
`sive as to the information rejected.
`It is therefore one object of the present invention to
`provide an EPG memory management system that does not
`require special transmission protocols. It is a further object
`of the present invention to implement an EPG which initially
`stores the schedule information for the viewer's service area
`and which then permits the program information to assume
`a continuous range of values according to its present utility
`so that the least valuable information stored in memory can
`be identified and deleted on a real-time basis as free memory
`space is needed by the system.
`BRIEF SUMMARY OF INVENTION
`These and other objects are accomplished in accordance
`with the presentinvention by a memory management system
`and method in which program schedule information is sent
`to viewers in a single transmission. The program schedule
`for the corresponding time period is initially stored in the
`EPG memory and is thus available for the viewer's perusal.
`In advance of the next schedule update, the system of the
`present invention executes a two-level memory "housekeep
`ing” operation to make room in memory for the information
`in the update. First, the system performs a high-level scan of
`the memory to identify obsolete schedule information
`(expired programming). If, after this Sweep, there is insuf
`ficient memory available for the next update, the system
`performs a second-level memory "triage” operation wherein
`schedule information is prioritized in accordance with pre
`defined rules for assessing the current value of the informa
`tion to each viewer. The system then deletes schedule
`information in ascending order of value, starting with the
`least valuable information, and continues until enough space
`is available in memory to store the schedule update.
`BRIEF EDESCRIPTION OF THE DRAWNGS
`FIG. 1 is an overview of the memory management opera
`tions implemented by the present invention; and
`
`FIELD OF INVENTION
`The present invention relates to a memory management
`system and method, and, in particular, to an intelligent
`system and method for allocating the finite memory
`resources of a television electronic program guide ("EPG")
`according to the current utility of the program schedule
`information stored in the EPG's memory.
`BACKGROUND OF INVENTION
`There are known EPG systems which provide television
`viewers with on-screen program schedule information in a
`convenient format. In so-called interactive EPGs, the opera
`tion of the EPG is under user control so that the user may
`browse schedule information in any order, select programs
`from on-screen menus for current or future viewing, order
`pay-per-view programming and perform other useful opera
`tions on demand. An example of an advanced EPG system
`is described in co-pending application serial no. 08/119367
`by Bennington, et al., entitled "Electronic Television Pro
`gram Guide Schedule System and Method” (hereinafter,
`"Bennington et at."), incorporated herein by reference.
`Most EPGs operate in the following basic manner: pro
`gram schedule information, and sometimes applications
`and/or systems software, is transmitted to equipment located
`on the viewer's premises (usually a "set-top box”) by way of
`broadcast, cable, direct satellite or some other suitable form
`of transmission. The set-top box contains memory so that the
`program schedule information can be retained for later
`viewing. The program schedule information stored in the
`set-top box is periodically updated (e.g., on a continuous,
`daily, weekly, bi-weekly basis). A programmed microcon
`troller in the set-top box cooperates with the viewer's
`television set to display the stored program schedule infor
`mation and to implement other functions of the EPG in
`response to user-generated signals. The functions available
`will depend on the sophistication of the particular EPG.
`In all such EPGs in which schedule information is stored
`in memory in customer premises equipment, memory stor
`age capacity is a major concern. The size of the memory will
`govern the volume of programming information available
`for the viewer's inspection at any one time and thus directly
`effect the perceived value of the EPG to viewers. Cost and
`physical size considerations place practical limits on the
`storage capacity of the set-top box. Therefore, there must be
`some mechanism for managing this finite resource so as to
`maximize the perceived value of the EPG to the user.
`In this regard, simply deleting program information as it
`becomes outdated to make room for the new program
`schedule information for every available channel in the
`viewer's service area, as in some EPGs proposed, is less than
`optimal in terms of maximizing value to the viewer. The
`most valuable programming information to a given viewer
`will not, in general, correspond to the complete schedule for
`all available channels for the time period covered by the
`information. For instance, schedule information for a pre
`mium channel that the viewer doesn't subscribe to will be of
`lesser interest to the viewer than, say, the schedule infor
`mation for the "major" channels (e.g., ABC, CBS, NBC,
`CNN). If the EPG permits the viewer to load one or more
`“favorite channels” into the EPG, the viewer will obviously
`be more interested in the schedules for those channels than
`others.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`45
`
`50
`
`55
`
`65
`
`-4-
`
`

`

`25
`
`3
`FIG. 2 is a table of variables and corresponding numerical
`values used to quantify the current value of the schedule
`information held in the EPG's memory.
`DETAILED DESCRIPTION OF APREFERRED
`EMBODIMENT
`The system and method of the present invention may be
`implemented on any suitable EPG platform having storage
`means for storing program schedule information, pro
`grammed processor means for executing a memory man
`10
`agement software program in accordance with the inven
`tion's various memory management functions, and a clock
`for keeping track of the current date and time. The program
`of the present invention may be stored in a separate storage
`means or in a separate portion of the same storage means
`used for the schedule information. The coding of a program
`to carry out the procedures of the present invention will be
`readily apparent to the ordinarily-skilled programmer.
`A suitable platform for implementing the present inven
`tion is the EPG of Bennington, et al., mentioned above.
`Referring to FIG. 1 of Bennington, et al., the program of the
`present invention is loaded into and stored in non-volatile
`memory EEPROM 20. Schedule information in this plat
`form is stored in a database constructed in DRAM 18. As
`explained in Bennington, et al., no special transmission
`protocols are required to send and receive program schedule
`information. Thus, program schedule information for the
`viewer's service area for the corresponding time period may
`be sent to the viewer's set-top box in a single data stream
`transmission and loaded into the database. The specific data
`items held in the schedule database will be discussed below
`in connection with the memory management routines that
`they support. The construction and organization of the
`program schedule database are routine tasks, as the
`ordinarily-skilled artisan will appreciate. Microcontroller 16
`provides a suitable processor means for executing the pro
`gram of the present invention, and the clock 19 keeps track
`of the current time and date (for comparing against schedule
`records). Other suitable hardware configurations will occur
`to those skilled in the art to which the present invention
`pertains. The present invention is not directed to the par
`ticular details of the reception and display means of the
`EPG, and, to avoid obscuring the present invention, the
`operation of such elements will not be discussed here.
`It is useful to begin with an overview of the invention,
`presenting FIG. 1 in a flowchart format. The primary func
`tion of the present invention is to create free space in the
`memory used for schedule information storage. This is
`accomplished by what will be referred to as a database
`"housekeeping" routine 100. The housekeeping routine may
`50
`be invoked as often as necessary to free up space in the
`memory. In some preferred embodiments of the invention,
`the housekeeping function is performed at least in advance
`of every program schedule information update. The house
`keeping routine may be invoked more or less frequently
`depending on the EPG's particular requirements. For
`example, in some preferred embodiments of the present
`invention, a complete new schedule is sent to subscribers on
`a daily, weekly, or some other periodic basis, with no data
`sent in between complete schedule updates. In these
`embodiments, the housekeeping routine need only be run in
`advance of the next schedule. In other preferred
`embodiments, the system does not wait until a complete new
`schedule is ready to be transmitted before updating the EPG.
`Rather, incremental updates to the program schedule are
`continuously sent to subscribers. In this "cyclical” mode of
`operation, when all of the data in a schedule has been sent,
`
`30
`
`35
`
`45
`
`55
`
`65
`
`5,652,613
`
`15
`
`20
`
`4
`transmission of schedule data updates immediately begins.
`Each subsequent transmission includes updates to schedule
`information already stored in the EPG as well as new data
`for the end of the covered time period. Any schedule data
`that has expired since the last transmission is not sent.
`Because new records are constantly received by the EPG,
`the housekeeping routine must be invoked more frequently
`that in embodiments in which complete new program sched
`ules are sent on a daily or other periodic basis.
`Once the housekeeping routine is initialized 110, the
`system begins a search of the schedule database for expired
`records. To do this, the find and delete subroutine 120 scans
`each program record to identify program records whose time
`and date data indicate that the record is expired. All such
`records are tagged and deleted from the program schedule
`database. Next, the system determines whether sufficient
`memory space is available to store the incoming schedule
`information. In this subroutine 130, the system compares the
`available memory space with a predetermined memory
`utilization value, above which the system deems the avail
`able free memory space insufficient. If there is insufficient
`free space memory available, the system then invokes the
`triage subroutine 140 wherein, as explained more fully
`below, information contained in unexpired program records
`is prioritized and deleted according to its current value to the
`viewer. The triage routine 140 stops after enough informa
`tion has been deleted to accommodate the new schedule
`information to be stored. At this point, the housekeeping
`routine terminates 150, ready to be invoked again as needed.
`The detailed steps involved in each of the subroutines just
`discussed will now be explained. In this illustrative embodi
`ment of the present invention, a program schedule record
`includes a calendar date, program start time and duration
`field for each scheduled showing of the program. For
`program showings which start on one day and end on
`another, the calendar date field is set to the date on which
`the program ends. Where the calendar date field for a
`showing is greater than the current date, the find and delete
`routine 120 retains the data associated with the showing, as
`the record corresponds to future programming. Where the
`calendar date field is less than the current date, the program
`record corresponds to expired programming and the data
`associated with the showing is therefore deleted. If the
`calendar date is equal to the current date, the system adds
`the program start time and duration fields together and
`compares the sum to the current time. Data for each showing
`are then deleted or retained depending on the outcome of the
`comparison. The find and delete routine 120 proceeds in this
`manner until the entire program schedule database has been
`scanned and purged of expired records. Where all of the
`showings of a particular program are expired, the system
`deletes the entire record corresponding to that program
`(which, as will be discussed later, contains other information
`about the program). If the EPG system permits time
`sensitive messages to be stored, these too can be deleted in
`the manner just described. In general, any information stored
`in the EPG that may become obsolete by virtue of the
`passage of time can be scanned and deleted in accordance
`with the present invention.
`After the system makes the first pass through the program
`schedule database, it next determines whether sufficient
`memory space has been freed-up to accommodate the
`incoming data. The comparison routine 130 does this by
`retrieving a previously stored memory utilization parameter
`that can be set to any value according to the particular
`system requirement. In a preferred embodiment, the utiliza
`tion parameter is chosen to be at least as large as the space
`
`-5-
`
`

`

`S
`in memory occupied by the maximum amount of informa
`tion that can be sent in a program schedule update. In this
`way, the EPG can receive a complete program schedule for
`the corresponding time period. The memory utilization
`parameter may, of course, be set to any arbitrary value based
`on the requirements of the particular EPG system. Where,
`for instance, the EPG accepts smaller amounts of data (i.e.,
`Smaller than an entire program schedule), the memory
`utilization parameter could be set to a lower value than
`where the EPG must accommodate a full program schedule
`in an update. In the preferred embodiment described above
`in which incremental updates are continuously sent to
`subscribers, the system would set the memory utilization
`parameter according to the number of hours of new program
`schedule data it wishes to support in the next schedule
`update. If the system determines that there is sufficient free
`memory, then the housekeeping routine 100 terminates. If,
`on the other hand, the deletion of expired records fails to free
`up enough memory space as determined by the predeter
`mined utilization parameter, then the triage routine 140 must
`be invoked.
`The triage routine 140 of the present invention performs
`an information prioritization function, quantifying the cur
`rent value of the information associated with each program
`record so that the least valuable information can be tagged
`25
`and deleted on a real-time basis. The program schedule
`records in this illustrative embodiment of the present inven
`tion include, in addition to data identifying the program
`name, the program air time(s) and channel(s) carrying the
`program, data corresponding to a program's full title ("Long
`Title”) and a summary description of the program's content
`("Information Record”), both of which need only be stored
`once for a given program. Other informational records may
`also be stored as part of the program records. For purposes
`of illustration, however, only the Long Title and Information
`Record will be considered. It should be understood that any
`type of data associated with a program in the schedule can
`be evaluated and prioritized in accordance with the present
`invention.
`The Long Title and Information Records associated with
`each program, while helpful, are not necessary to identify a
`program and its corresponding air times and, moreover, tend
`to occupy a good deal of the system's memory. The object
`of the triage routine in this exemplary embodiment is
`therefore to identify the least valuable Long Title and
`45
`Information Records in the database so that this data may be
`deleted. In this way, space is made available in memory
`while at the same time retaining the core schedule informa
`tion (program short title, air time(s) and channel(s)) for each
`program in the schedule. Of course, it will be immediately
`recognized that any type of information stored in the EPG's
`memory may be valued in accordance with the techniques of
`the present invention.
`After the triage routine is initialized 141, the system first
`visits each scheduled showing of a program and assigns a
`value to each of three program variables associated with the
`showing. The variable names and their corresponding values
`are displayed in the table at FIG. 2. As shown in this table,
`the higher values are assigned to time periods, channels and
`air times more likely to interest the viewer. As can also be
`seen in the table of FIG. 2, the EPG of the preferred
`embodiment permits the viewer to designate favorite chan
`nels and keeps a record of these channels along with the
`premium channels that the viewer has purchased. The "nor
`mal” channels are those not designated purchased or
`favorite, and, accordingly, have lower values attached to
`them. The list of variables shown in FIG. 2 is illustrative
`
`65
`
`30
`
`35
`
`50
`
`55
`
`5,652,613
`
`10
`
`15
`
`20
`
`6
`only, and it will be readily understood that other variables
`may be used to quantify the current usefulness of program
`information, the number of such variables limited only by
`the capacity of the particular EPG system to which the
`present invention is applied. Likewise, the specific values
`chosen for each the variable ranges in the preferred embodi
`ment are exemplary only, and may be in general be varied
`according to local demographics or other parameters.
`The system next computes a value for each showing of a
`program 142 according to the following equation:
`schedule record value-channel-value"time period'hours
`away
`(1)
`Other variables may be multiplicatively added to the
`above equation (1), such as a "selected program” variable
`equal to a high value (e.g., 8) when the viewer has set a
`reminder to watch that program or has purchased that
`specific program, and equal to unity for all other programs.
`A "scope" variable corresponding to the value of a data tag
`attached the program record and indicative of the degree to
`which the program is "local” in nature may also be included
`in equation (1). Higher scope values would be assigned to
`data with a more local orientation, reflecting its higher level
`of interest to the viewer. Once the schedule record value
`for every showing of a program has been computed, the
`system adds all of the schedule record values for a given
`program together to arrive at a total value for that program's
`data ("total program value") 143. This unique aspect of
`the presentinvention allows the EPG to ascribe a continuous
`range of values of utility to program information, thereby
`transforming an otherwise subjective judgment ("what is the
`“value' of a program?") into an objective one, suited to
`automatic execution. Alternatively, the system could be
`programmed to use the highest schedule record value for
`a program as that program's value. This embodiment might
`be useful in instances where it is determined that viewers are
`more interested in programs with very high individual
`schedule record values (e.g., a program with its last
`scheduled showing in two hours) than in programs with
`lower individual schedule record values but high aggre
`gated program values.
`After the total program value for every program stored
`in memory has been computed, the system is ready to make
`a determination as to the least valuable Long Title and
`Information Records in memory. In one embodiment, the
`least valuable Information Record and Long Title are simply
`those associated with the program having the lowest total
`program value as computed above. In that case, the system
`would tag the corresponding Long Title and Information
`Record and delete their data from memory 144. Deletion of
`data would proceed in this manner, beginning with the next
`least valuable program, until enough free space has been
`created (determined in routine 145, as in the find and delete
`routine 120, by the pre-defined memory utilization
`parameter). Alternatively, the system could be configured to
`weight the Information Record and Long Title data differ
`ently. In this embodiment of the present invention, Record
`Values would be computed for each of the two types of data
`in accordance with the equation:
`(2)
`Record Value=total-program value"record type,
`where record type is a unique value assigned by the system
`to the type of data (Information Record or Long Title)
`associated with the program. Deletion of data would then be
`carded out starting with the lowest Record Value data,
`whether that be an Information Record or Long Title, and
`
`-6-
`
`

`

`5,652,613
`
`10
`
`15
`
`7
`continuing until sufficient free space in memory is available.
`In this embodiment, equation (1) and equation (2) could be
`combined into a single equation for ease of execution.
`Whichever embodiment is being used, the least valuable
`data is deleted until compliance with the pre-determined 5
`utilization parameter is achieved in step 145. In instances
`where two program records have identical values, the system
`deletes the largest record as measured in total number of
`bytes.
`Thus, it can be seen that the present invention allows the
`EPG to manage its memory resources in a more flexible and
`efficient manner in comparison to prior art systems. No
`special transmission protocols are required. And, rather than
`fixing a binary value to program data and rejecting it on that
`basis before it is stored, the present invention stores the
`program data in a given schedule update as it is received and
`permits the value of the data to vary over a continuous range
`of values during its residency in memory. The viewer gains
`the two-fold benefit of having all potentially valuable pro
`gram information available at the outset, while at the same
`20
`time having the least valuable information stored in the EPG
`identified and deleted on a real-time basis as memory space
`is needed.
`It will be appreciated that although the present invention
`has been described by reference to particular embodiments,
`many other embodiments may be implemented without
`departing from the spirit and scope of the invention as set
`forth in the following claims.
`What is claimed is:
`1. In a television electronic program guide (EPG) system,
`including means for receiving program schedule informa
`tion including program names, scheduled air times and
`channels, means for storing the program schedule
`information, means for executing an EPG program and
`display means for displaying schedule information
`on-screen, a memory management system comprising:
`a) means for storing the program schedule information
`associated with programs to be shown in a correspond
`ing time period;
`b) means for automatically deleting expired program
`schedule information from the storage means to create
`free space to accommodate storage of new program
`schedule information; and
`c) means for automatically deleting, as needed to create
`additional free space in the storage means for storage of
`new program schedule information, unexpired program
`45
`schedule information according to its current utility to
`a viewer.
`2. A memory management system according to claim 1
`further comprising means for specifying the amount of free
`space in storage means needed.
`3. A memory management system according to claim 2
`further comprising means for comparing actual free space in
`the storage means with the needed amount.
`4. The memory management system according to claim 3
`wherein the means for deleting expired program schedule
`information is activated when the comparison means indi
`cates actual free space in the storage means is less than the
`needed amount and deactivated when the comparison means
`indicates free space in the storage means is greater than or
`equal to the amount needed.
`5. The memory management system according to claim 4
`60
`wherein the means for deleting unexpired program schedule
`information is activated when the storage means contains no
`expired program schedule information and the comparison
`means indicates actual free space in the storage means is still
`less than the amount needed and deactivated when the
`comparison means indicates free space in the storage means
`is greater than or equal to the amount needed.
`
`35
`
`8
`6. The memory management system according to claim 5
`wherein the means for deleting unexpired program schedule
`information includes means for assigning a utility value to
`each program for which corresponding program schedule
`information is stored in the storage means and means for
`deleting program schedule information in decreasing order
`of utility of the program corresponding to such information.
`7. The memory management system according to claim 6
`wherein the means for assigning utility values to programs
`includes means for computing a value for each scheduled
`showing of a program according to utility criteria including
`channel, showing time and hours away, and means for
`aggregating such values to compute a total value for each
`program.
`8. In a television electronic program guide (EPG) system,
`including means for receiving program schedule informa
`tion including program names, scheduled air times and
`channels, means for storing the program schedule
`information, means for executing an EPG program and
`display means for displaying schedule information
`on-screen, a method for managing EPG memory comprising
`the steps of:
`a) storing the program schedule information associated
`with programs to be shown in a corresponding time
`period;
`b) automatically deleting expired program schedule infor
`mation from the storage means to create free space to
`accommodate storage of new program schedule infor
`mation; and
`c) automatically deleting, as needed to create additional
`free space in the storage means for storage of new
`program schedule information, unexpired program
`schedule information according to its current utility to
`a viewer.
`9. The memory management method according to claim 8
`further comprising the step of specifying the amount of free
`space in the storage means needed.
`10. The memory management method according to claim
`9 further comprising the step of comparing actual free space
`in the storage means with the needed amount.
`11. The memory management method according to claim
`10 wherein the step of deleting expired program schedule
`information is carried out when the comparison step indi
`cates actual free management in the storage means is less
`than the needed amount and concluded when the comparison
`means indicates free space in the storage means is greater
`than or equal to the amount needed.
`12. The memory management method according to claim
`11 wherein the step of deleting unexpired program schedule
`information is carried out if the comparison step indicates
`actual free space in the storage means is less than the amount
`needed and there is no expired program schedule informa
`tion in the storage means and concluded when the compari
`son means indicates free space in the storage means

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket