throbber
IN THE UNITED STATES PATENT AND TRADEMARK OFFICE
`
`James J. Fallon, et al.
`In re Patent of:
`8,880,862 Attorney Docket No.: 39521-0025IP1
`U.S. Patent No.:
`November 4, 2014
`Issue Date:
`Appl. Serial No.: 13/118,122
`Filing Date:
`May 27, 2011
`Title:
`SYSTEMS AND METHODS FOR ACCELERATED
`LOADING OF OPERATING SYSTEMS AND
`APPLICATION PROGRAMS
`
`DECLARATION OF DR. CHARLES J. NEUHAUSER
`
`I.
`
`Introduction
`
`1. My name is Dr. Charles J. Neuhauser. I understand that I am submitting a
`
`declaration in connection with an Inter Partes review (“IPR”) proceeding before
`
`the United States Patent and Trademark Office for U.S. Patent No. 8,880,862
`
`(“the ’862 Patent”).
`
`
`
`2.
`
`I have been retained on behalf of Apple Inc. to offer technical opinions with
`
`respect to the ’862 Patent and the prior art references cited in this IPR. My
`
`compensation is not based on the outcome of this matter.
`
`
`
`3.
`
`I am not a lawyer. However, counsel has advised me of legal concepts that are
`
`relevant to IPR proceedings and to the opinions that I offer in this declaration. I
`
`understand that, during IPR, claims of the subject patent are given a broadest
`
`reasonable interpretation. Counsel has advised me that the broadest reasonable
`
`
`
`1
`
`Apple v. Realtime
`Proceeding No. IPR2016-01737
`APPLE 1030
`
`

`

`
`
`interpretation must be consistent with the specification, and that claim language
`
`should be read in light of the specification and teachings in the underlying patent.
`
`
`
`4.
`
`I have reviewed the ’862 Patent, including the claims of the patent in view of the
`
`specification, and I have reviewed the ’862 Patent’s prosecution history. In
`
`addition, I have reviewed the following documents: U.S. Patent No. 6,374,353
`
`(“Settsu”), U.S. Patent No. 6,145,069 (“Dye”), U.S. Patent No. 7,190,284 (“Dye
`
`’284”), Burrows et al., “On-line Data Compression in a Log-structured File
`
`System” (1992) (“Burrows”), U.S. Patent No. 6,317,818 (“Zwiegincew”), Jeff
`
`Prosise, DOS 6 – The Ultimate Software Bundle?, PC Magazine, Apr. 13, 1993
`
`(“Prosise”), Decoder, File, Program File, Direct Memory Access, RAM, and
`
`RAM Cache, Microsoft Press Computer Dictionary (3d ed. 1997)(“MSFT
`
`Dictionary”), Jacob Ziv & Abraham Lempel, A Universal Algorithm for
`
`Sequential Data Compression, IT-23 No. 3 IEEE Transactions on Information
`
`Theory 337 (1977)(“Ziv”), James A. Storer & Thomas G. Szymanski, Data
`
`Compression via Textual Substitution, 19 No. 4 Journal of the Association for
`
`Computing Machinery (1982)(“Storer”), Kyle Loudon, Mastering Algorithms
`
`with C (1999) (“Loudon”), Michael Barr, Programming Embedded Systems in C
`
`and C++ (1999)(“Barr”), Eric Pearce, Windows NT in a Nutshell
`
`
`
`2
`
`

`

`(1999)(“Pearce”), and Tim O’Reilly, Troy Mott, and Walter Glenn, Windows 98
`
`
`
`in a Nutshell (1999)(“O’Reilly”).
`
`
`
`5.
`
`I am an electrical engineer by training and profession with a specialization in the
`
`area of computer based systems. My educational and practical background also
`
`includes extensive experience in the field of computer science and engineering. I
`
`have been a practicing electrical engineer since 1968. In formulating my
`
`opinions, I have relied upon my training, knowledge, and experience in the
`
`relevant art. A copy of my curriculum vitae was provided as Appendix A to my
`
`previous Declaration, and it provides a description of my professional experience,
`
`including my academic and employment history, publications, conference
`
`participation, and more.
`
`
`
`6.
`
`I have extensive educational and professional engineering experience. I was
`
`awarded a BSEE degree from the University of Notre Dame in 1968.
`
`Immediately after graduating from the University of Notre Dame, I was
`
`employed as a Technical Staff Member by Bell Telephone Laboratories (which
`
`has subsequently become Alcatel-Lucent).
`
`
`
`
`
`3
`
`

`

`
`
`7. During my time at Bell Telephone Laboratories, I worked on the specification,
`
`testing, and development of computer controlled data and telephone switching
`
`systems. During that time, I also received my MSEE from Northwestern
`
`University (1971) under a company sponsored program.
`
`
`
`8.
`
`I left Bell Telephone Laboratories in 1971 to pursue a Ph.D. in a joint CS/EE
`
`program at Johns Hopkins University. In 1980, I was awarded a doctorate based
`
`on my research in evaluating computer architectures using emulation techniques.
`
`
`
`9. While working on my Ph.D. research, I joined the Digital Systems Laboratory at
`
`Stanford University as a research associate in 1974. There, I worked on the
`
`development of emulation systems for architectural research. In 1974, I also
`
`began working on a part-time basis at Palyn Associates, Inc. to develop a range
`
`of commercial products based on this research.
`
`
`
`10. In 1980, I joined Palyn as a full-time member of the Technical Staff. I later
`
`became Director of Engineering at Palyn and, by 1985, I was the Vice President
`
`of Engineering. At Palyn, I was responsible for directing product development
`
`on behalf of our clients, which consisted of a range of international entities
`
`
`
`4
`
`

`

`involved in computer technology. I also directly consulted with clients regarding
`
`
`
`processor and peripheral design.
`
`
`
`11. In my consulting role at Palyn, I was responsible for the specification, design,
`
`testing, and debugging of a wide range of computer devices, including mini-
`
`computers, microprocessors, printers, and communication interfaces. This
`
`involved both hardware and software development.
`
`
`
`12. Since 1994, I have been an independent consultant focusing on technical analysis
`
`primarily in support of litigation or potential litigation. In this role I have
`
`analyzed many different types of computer based systems, including robotic
`
`manufacturing systems, television transmission and reception systems,
`
`microprocessors, main-frame systems, peripheral systems and networked
`
`systems. I also have led teams of engineers in the functional analysis of various
`
`types of systems, including robotic systems, networked processors, processor
`
`operation, and video production equipment.
`
`
`
`13. Other details concerning my background, including a list of my publications,
`
`professional service, and more, are set forth in my curriculum vitae. In forming
`
`the opinions expressed in this report, I have relied upon my education and my
`
`
`
`5
`
`

`

`
`
`nearly 50 years of professional experience in the fields of electrical and computer
`
`engineering and of computer science. This declaration is organized as follows:
`
`
`
`I.
`
`Introduction
`
`II. Detailed Discussion
`
`III. Legal Principles
`
`
`
`II. Detailed Discussion
`
`A. One of Ordinary Skill
`
`14. It is my understanding that I must analyze and apply the prior art cited above
`
`from the perspective of a person having ordinary skill in the art as of February 3,
`
`2000 (“one of ordinary skill”), which I understand to be the ’862 Patent’s earliest
`
`possible priority date.
`
`
`
`15. The ’862 Patent relates to accessing data in conventional computer systems.
`
`Figure 1 is an exemplary figure that illustrates the basic structure of one
`
`embodiment of the ’862 Patent’s system [’862 Patent, 4:36-37, 5:63-65]. This
`
`and other similar figures of the ’862 Patent show straightforward and well known
`
`structures related to conventional computer systems, such as the widely used
`
`personal computer. In my opinion, one of ordinary skill would be a person with a
`
`
`
`6
`
`

`

`
`
`Bachelor’s Degree in electrical engineering, computer engineering, or a related
`
`area of study. In addition, this person would have between three and five years
`
`of practical experience in the design and implementation of computer systems,
`
`such as personal computers. Alternatively, a person with a Master’s Degree in
`
`the area of electrical engineering, computer engineering, or a related area of study
`
`and somewhat less practical experience would be similarly qualified.
`
`
`
`16. I am well aware of the qualifications of such a person because I have worked
`
`with, supervised, and hired engineers with similar capabilities. By the year 2000,
`
`I had been awarded a Ph.D. in CS/EE with a specialization in computer
`
`engineering and had over 30 years of practical experience. Thus, by February 3,
`
`2000, I was at least as qualified as the person having ordinary skill in the art that I
`
`have identified above. Moreover, I understand the perspective of one of ordinary
`
`skill, which I have applied in my analysis.
`
`
`
`B.
`
`Prior Art and the Claims of the ’862 Patent
`
`17. The amendments introduced by Patent Owner in its proposed substitute claims
`
`are directed toward trivial features that one of ordinary skill would have
`
`considered obvious over the prior art. As I discuss in detail below, for example,
`
`
`
`7
`
`

`

`
`
`Settsu, both alone and in combination with Zwiegincew, renders obvious every
`
`feature of the proposed substitute claims, including the amended features.
`
`Independent Claim 118 (Amendment of Challenged Claim 1)
`
`[118.0] A method for providing accelerated loading of an operating system in a
`
`computer system, the method comprising:
`
`18. The system of Settsu is a “computer system” as claimed in the preamble of
`
`amended claim 118. One of ordinary skill in the art would have understood this
`
`from, for example, Settsu Fig. 1, 5 and 12 which show the basic software and
`
`hardware aspects of a computer system [5:58-60, 6:4-6, 6:29-31]. Further, the
`
`purpose of Settsu is related to “booting up and information processing
`
`apparatus” [Abstract, 1:1-4, 1:44-50, 13:49-55] and one of ordinary skill in the
`
`art would have understood that information processing apparatus is a “computer
`
`system”.
`
`
`
`19. In general, Settsu is related to improving the speed of loading an operating
`
`system. For example, under the title “Field of the Invention” Settsu states “The
`
`present invention relates to an information processing apparatus capable of
`
`reducing the time required for booting itself when it is powered on, and a method
`
`of booting an information processing apparatus at high speed” [1:8-12]. One of
`
`ordinary skill in the art would have understood from this citation and from other
`
`
`
`8
`
`

`

`
`
`discussion in Settsu that one of the objectives of Settsu is “providing accelerated
`
`loading of an operating system” because it is explicitly stated [1:44-50, 10:36-39,
`
`14:64-15:4].
`
`
`
`20. In a system of Settsu as modified to include the teachings of Zwiegincew the
`
`basic system of Settsu would be retained but the system would be extended to
`
`include the so called “scenario files” of Zwiegincew. Zwiegincew makes use of
`
`scenario files to load pages from hard disk into random access memory in
`
`anticipation of their need. One of ordinary skill in the art would have understood
`
`that this speeds up the loading and execution of applications because a time
`
`consuming hard page fault is not needed by the system to access prefetched data
`
`[Abstract, 1:5-10, 4:6-13].
`
`
`
`21. Thus, to one of ordinary skill in the art either Settsu alone or Settsu as modified
`
`by Zwiegincew would have met the requirements of the preamble to claim 118.
`
`
`
`[118.1] preloading a portion of boot data in a compressed form into a volatile
`
`memory, the portion of boot data in compressed form being associated that is
`
`with a portion of a boot data list for booting the computer system into a memory,
`
`
`
`9
`
`

`

`
`
`22. Both Settsu and Zwiegincew disclose “preloading a portion of boot data in
`
`compressed form”. Claim 118 amends claim 1 by replacing “loading” with
`
`“preloading”. One of ordinary skill in the art would have understood that
`
`“preloading” is simply a form of “loading” but restricted as defined further on in
`
`the claim. In general, “preloading” information before it is explicitly required
`
`would have been well-known to one of ordinary skill in the art as is clear from
`
`Settsu alone or Settsu in combination with Zwiegincew.
`
`
`
`23. Settsu describes multiple “preferred embodiments,” but sometimes omits
`
`description of like elements between embodiments [See Settsu 10:43-51, 13:49-
`
`55]. Settsu is nevertheless clear that functionality ascribed to elements from one
`
`embodiment applies equally to similar elements of other embodiments. As such,
`
`one of skill would have understood and found it obvious that the description of
`
`elements provided by Settsu with respect to one embodiment applies equally to
`
`similar elements of other embodiments.
`
`
`
`24. The fourth embodiment of Settsu describes the loading of the OS main body
`
`module 8 into the memory 2 [generally, Settsu Figs. 12-14, 13:49-15:4]. Settsu
`
`describes structuring the operating system OS as a mini OS module 7 and a OS
`
`main body module 8 [see, e.g., Fig. 1, 1:51-57]. Upon initialization, mini OS
`
`
`
`10
`
`

`

`
`
`module 7 is loaded first and then the mini OS module 7 carries out the loading of
`
`the OS main body module 8 [Settsu Fig. 4, 9:4-11, 9:40-43]. Thus, one of
`
`ordinary skill in the art would have understood that OS main body module 8 is
`
`the required “portion of boot data” required by element 118.1 because it is data
`
`that associated with data requests expected to result from a system power-
`
`on/reset.
`
`
`
`25. Settsu describes an embodiment that explicitly makes use of “boot data in
`
`compressed form”, namely the fourth embodiment [Settsu Figs. 12-14, generally,
`
`13:49-15:4]. In this embodiment components of the OS main body module 8 are
`
`stored on the boot device 3 in compressed form [3:6-12,13:55-65]. Thus, one of
`
`ordinary skill in the art would have understood that the OS main body module 8
`
`is “a portion of boot data in compressed form” as required by element 118.1.
`
`
`
`26. Settsu explains that the use of compression and decompression reduces the time
`
`required for I/O processing, which further reduces the time required for booting
`
`up [Settsu, 14:58-15:5]. Because Settsu’s OS main body module 8 is loaded
`
`when the information processing apparatus is powered on and represents the
`
`operating system data needed to boot the information processing apparatus,
`
`Settsu’s OS main body module 8 includes data associated with data requests
`
`
`
`11
`
`

`

`
`
`expected to result from a system power-on/reset and, thus, meets the claimed
`
`boot data. As such, by its description of transferring the OS main body module 8
`
`from boot device 3 into memory 2 as a plurality of compressed files, Settsu
`
`discloses preloading a portion of boot data in a compressed form into memory.
`
`
`
`27. In more detail, Settsu Fig. 12 (reproduced below in annotated form) illustrates the
`
`“computer system” of Settsu [5:58-60, 7:66-8:9]. To prepare the system for
`
`operation the OS main body module 8 is loaded into memory 2 [8:21-35]. Settsu
`
`does not indicate whether memory 2 is non-volatile or volatile memory.
`
`However, one of ordinary skill in the art would have understood that either type
`
`of memory would be suitable for use as memory 2 because they both serve the
`
`purpose of holding the OS main body module so that it may be executed by the
`
`system [10:21-24].
`
`
`
`
`
`12
`
`

`

`
`
`
`
`28. From basic knowledge one of ordinary skill in the art would have known that
`
`
`
`volatile memory would be the most appropriate type of memory o use in the
`
`implementation of Settsu memory 2. They would have known this for two
`
`reasons. First, there is no stated reason in Settsu that memory 2 must be non-
`
`volatile memory. One of ordinary skill in the art would have known from basic
`
`knowledge that boot device 3 is a non-volatile memory because it is shown as a
`
`disk, which is well-known to be non-volatile and therefore, implementing
`
`memory 2 as non-volatile memory would be pointless within the context of
`
`Settsu. Second, one of ordinary skill in the art would have known that in typical
`
`computer systems the main operating memory is volatile because it is generally
`
`cheaper, faster and smaller than a non-volatile memory that can be loaded
`
`arbitrarily. Thus, one of ordinary skill in the art would have understood that
`
`
`
`13
`
`

`

`
`
`Settsu memory 2 would have or could have been “volatile memory” as required
`
`by element 118.1. Furthermore, it would have been obvious to one of ordinary
`
`skill in the art to implement Settsu memory 2 as volatile memory, such as
`
`SDRAM, because this was a very common approach in the design of computer
`
`systems.
`
`
`
`29. Thus, one of skill would have found it obvious to preload a portion of boot data
`
`in a compressed form into a volatile memory in Settsu’s system.
`
`
`
`30. Considering the fourth embodiment of Settsu, one of ordinary skill in the art
`
`would have understood that the OS main module 8 (i.e. the “the portion of boot
`
`data in compressed form” is associated with a “boot data list” in two ways. First,
`
`the compressed files that make up the OS main body module are themselves a
`
`form of list. Second, in fourth embodiment the mini OS module 7 maintains a
`
`list of the OS main body module files to be loaded.
`
`
`
`31. With respect to the first type of boot data list, Settsu Fig. 12 shows a file system 5
`
`that contains the multiple files that make up the OS main body module 8 [7:66-
`
`8:9, 13:55-65]. One of ordinary skill in the art would have understood that a file
`
`is a type of list, and would have further understood that an OS functional module
`
`
`
`14
`
`

`

`
`
`file stored on boot device 3 and preloaded into memory 2 includes a boot data list
`
`in the form of a list of data necessary for starting the OS. [“File: Microsoft Press
`
`Computer Dictionary (3d ed. 1997)]. Settsu also would have made this clear to
`
`one of ordinary skill in the art.
`
`
`
`32. Settsu Fig. 36 (reproduced below in annotated form) illustrates how the compiled
`
`code is divided into a mini OS module 7 and an OS main body module 8. The
`
`OS main body module 8 is composed of a header 114, a code portion 108 and a
`
`data portion 110. Header 114 locates and defines the code portion 108 and data
`
`portion 110 within the OS main body file [24:44-62, see particularly 24:60-62].
`
`One of ordinary skill in the art would have understood that the header is a list
`
`locating information with in a file and the organization of the OS main body
`
`module file is a list because that is what is shown in Fig. 36. Because the mini
`
`OS module uses the header information and the structure of the file to load the
`
`OS main body module, one of ordinary skill in the art would have understood
`
`that this list is a “boot data list”.
`
`
`
`
`
`15
`
`

`

`
`
`
`
`
`
`33. With respect to the second type of “boot data list” the fourth embodiment makes
`
`it clear that in the process of loading the OS main body module 8 the mini OS
`
`module 7 makes use of a type of list. One of ordinary skill in the art would have
`
`seen this clearly from Fig. 14 related to the fourth embodiment [6:35-38, 14:13-
`
`17]. Fig. 14 illustrates the operation of the OS loading and decompression
`
`processing module 50 of Fig. 13 [14:13-17]. The illustrated flow chart shows
`
`that each functional module of the OS main body module is loaded in a sequence
`
`Fig. 14, step ST181. At step ST185 a check is made to determine if all the
`
`functional modules have been loaded [14:17-28, 14:44-52]. To one of ordinary
`
`skill in the art this would suggest a list is being used to control the loading of the
`
`
`
`16
`
`

`

`
`
`functional modules because this is a common approach to carrying out this
`
`process. Settsu describes two types of such a list.
`
`
`
`34. Fig. 3 illustrates a first type of list, namely those files or functional modules that
`
`make of the OS main body module in the form of a kernel module 15 [8:50-55].
`
`It is the responsibility of the OS loading and initialization processing module 11
`
`in mini OS module 7 to ensure that each of these functional modules is loaded
`
`[9:56-66]. In performing this function according to the sequencing shown in the
`
`flowchart of Fig. 14 one of ordinary skill in the art would have found it obvious
`
`to make use of a list because the structure of the files (as explained above) and
`
`the ordering of the files in Fig. 3 suggests ordering and sequencing. Similarly,
`
`Fig. 12 related to the fourth embodiment suggest files to be loaded sequentially
`
`until are files are loaded as Fig. 14 illustrates. One of ordinary skill in the art
`
`would have found it natural to use a list of the functional modules to control the
`
`loading as this is a common and well-known structure for identifying items to be
`
`manipulated in sequence.
`
`
`
`35. Settsu describes a second type of list, namely function definition files. Settsu
`
`Figs. 17-20 relate to an embodiment of Settsu that controls the loading and
`
`starting of application programs. As shown in Fig. 17 the OS main body 8 is
`
`
`
`17
`
`

`

`
`
`divided into a number of functional modules [16:13-21]. In this embodiment, a
`
`function definition file 71 contains a list of the OS functional modules required
`
`for a particular application module 70 to run [16:26-30]. In order to speed up the
`
`start of the application module the mini OS module (specifically, the AP
`
`Execution and OS Load processing module 72, Fig. 19) first preloads all those
`
`mini OS modules that are needed by the application module 70. To do this the
`
`mini OS module makes use of the function definition file 71 [Fig. 20, steps
`
`ST213, ST216; 16:7-17:62]. One of ordinary skill in the art would understand
`
`that the function definition file 71 is a list because Settsu states that it is [16:26-
`
`30, 16:65-17:1]. Because the function definition file 71 is used to control the
`
`preloading of OS main body modules one of ordinary skill in the art would have
`
`understood that it is a “boot data list” as required by element 118.1. Thus, to one
`
`of ordinary skill in the art Settsu makes obvious all the aspects of element 118.1.
`
`
`
`36. Zwiegincew complements Settsu’s teachings with additional disclosure of
`
`preloading boot data into volatile memory, and of updating a boot data list in the
`
`same context. Indeed, Zwiegincew would have provided further motivation to
`
`one of skill to preload boot data into volatile memory, and to update boot data
`
`lists in Settsu’s system. One of skill would have been motivated, for example, to
`
`associate compressed boot data for booting Settsu’s system with a boot data list,
`
`
`
`18
`
`

`

`
`
`and to preload the compressed boot data from boot device into memory 2
`
`(implemented as volatile memory) using the boot data list.
`
`
`
`37. Settsu when modified by Zwiegincew also discloses all the aspects of element
`
`118.1. In more detail, Fig. 1 of Zwiegincew (reproduced below in annotated
`
`form) illustrates a conventional personal computer system [3:57-59, 4:31-46].
`
`This system includes RAM (Random Access Memory) 125, which one of
`
`ordinary skill in the art would have understood to be a type of volatile memory
`
`because this is basic engineering knowledge.
`
`
`
`
`
`19
`
`
`
`

`

`38. Zwiegincew recognizes that hard page faults, that is page faults that require a
`
`
`
`disk access to correct, are an important hindrance to satisfactory performance
`
`[1:36-44]. Zwiegincew addresses this problem by creating scenario files that
`
`contain copies of pages likely to be need after particular hard page faults [2:56-
`
`59, 6:64-67]. When the particular scenario is detected, indicating that a series of
`
`hard page faults may occur the pages identified in the associated scenario file are
`
`prefetched (i.e. “preloaded”) in anticipation of the hard page fault [4:6-13, Fig. 3
`
`steps 312-318; 9:65-10:18]. Thus, one of ordinary skill in the art would have
`
`understood that Zwiegincew meets the element 118.1 requirement of “preloading
`
`a portion of boot data” and that the “portion of boot data” is “associated with a
`
`portion of a boot data list”, namely the scenario file.
`
`
`
`39. Zwiegincew also disclosed to one of ordinary skill in the art compressing data for
`
`the purpose of improving disk performance during load [8:66-9:13]. The page
`
`data to be preloaded is stored on the disk file and because in one embodiment of
`
`Zwiegincew the disk data is compressed one of ordinary skill in the art would
`
`understand that the scenario files are also compressed. Thus, one of ordinary
`
`skill in the art would have understood that what is being “preloaded” in
`
`Zwiegincew is “a portion of boot data in a compressed form” [2:56-60].
`
`
`
`
`
`20
`
`

`

`
`
`40. Thus, one of ordinary skill in the art would have understood that Settsu as
`
`modified by Zwiegincew disclosed all aspects of element 118.1
`
`
`
`[118.2] wherein the preloading comprises transferring the portion of boot data in
`
`the compressed form into the volatile memory,
`
`41. In Settsu’s fourth embodiment [Figs. 12-14, generally, 13:49-15:4] the mini OS
`
`module transfers function modules of the OS main body module from boot
`
`device 3 to memory 2. To one of ordinary skill in the art it would have been
`
`obvious to implement memory 2 as volatile memory, such as RAM. As stated
`
`above the OS main body module 8 and its associated functional modules are the
`
`“portion of boot data” of element 188.2. Settsu discloses that the OS main body
`
`is stored in compressed form on the disk and is transferred in “compressed form”
`
`into memory 2 [13:49-65, 14:30-37]. As shown in Settsu Fig. 14 each OS
`
`functional module is loaded into memory (ST181) and then subsequently
`
`decompressed (ST182) [14:13-37]. Thus, one of ordinary skill in the art would
`
`have understood that Settsu alone or in combination with Zwiegincew meets all
`
`the aspects of element 118.2.
`
`
`
`
`
`21
`
`

`

`
`
`[118.3] and wherein the preloading occurs during the same boot sequence in
`
`which a boot device controller receives a command over a computer bus to load
`
`the portion of boot data;
`
`42. The “boot sequence” of Settsu begins with the firmware 6 located in ROM 1
`
`loading the mini OS module 7 from the boot block 4 contained on boot device 3
`
`[Fig. 1, 7:65-8:23, 11:44-65, Fig. 4, 9:4-11]. Once the mini OS module 7 is
`
`loaded the code of the mini OS module 7 running on the information processing
`
`apparatus [Fig. 1] is the “boot device controller.” One of ordinary skill in the art
`
`would have understood this from comparing the operation and structure of the
`
`data storage controller 10. In the ‘862 the data storage controller 10 acts initially
`
`as a boot device controller because it is responsible for booting the operating
`
`system and any applications that must start immediately after power on or reset
`
`[‘862 Fig. 2, 9:4-14, 9:55-10:10]. Code stored in ROM 24 contains the code
`
`which performs the boot device function. One of ordinary skill in the art would
`
`have understood that while the data storage controller of the ‘862 has the well-
`
`known structure and organization of an information processing system, its
`
`character as a boot device controller comes from the programming contained in
`
`ROM 24. They would have understood this because the use of processors, such
`
`as DSP or processor 21 in device this configuration to perform more or less
`
`arbitrary functions is a basic concept of computer engineering. The ‘862 patent
`
`
`
`22
`
`

`

`
`
`recognizes this basic concept because directly under “Detailed Description of
`
`Preferred Embodiments” the ‘862 patent states:
`
`
`
`
`
`“It is to be further understood that the present invention may be
`
`implemented in various forms of hardware, software, firmware,
`
`or a combination thereof. Preferably, the present invention is
`
`implemented on a computer platform including hardware such
`
`as one or more central processing units (CPU) or digital signal
`
`processors (DSP), a random access memory (RAM), and
`
`input/output (I/O) interface(s).” [‘862 5:2-8]
`
`43. This simply confirms the understanding of one of ordinary skill in the art that
`
`CPUs, DSPs, microcomputers and so forth, when properly programmed, may
`
`perform specific special purpose functions. One of ordinary skill in the art would
`
`have understood this because not only is it basic computer engineering, but it is
`
`the foundational concept that gives programmable systems their power. Thus,
`
`one of ordinary skill in the art would have understood that mini OS module 7
`
`running on the information processing apparatus of Settsu is the required “boot
`
`device controller” of element 118.3.
`
`
`
`
`
`23
`
`

`

`44. In Settsu initialization of the system results in immediate execution of the
`
`
`
`firmware code module 6 in ROM 2. This module in turn loads the mini OS
`
`Module 7 from the boot block 4 on boot device 3. Once the mini OS module 7 is
`
`loaded the firmware code module 6 “transfers control” to the mini OS module 7
`
`[Figs. 1, Fig. 4, 8:8-13, 9:4-11]. One of ordinary skill in the art would have
`
`understood that in an information processing apparatus (Settsu’s term) that
`
`control is typically transferred to other parts of the program by a jump, a call, a
`
`signal or some other similar mechanism or that it would have been obvious to do
`
`so because this is basic computer engineering. One of ordinary skill in the art
`
`would have understood that transferring control with a jump, a call or a signal is a
`
`type of command at least because it initiates the execution of the target code.
`
`Thus, one of ordinary skill in the art would have understood that the mini OS
`
`module 7 of Settsu “receives a command… to load a portion of boot data “.
`
`Further, one of ordinary skill in the art would have understood that an
`
`information processing apparatus typically contains bus over which instructions
`
`(jumps, calls, signal etc.) are issued. This person would have understood this
`
`from their basic knowledge of computer engineering because computer busses
`
`and bus systems are a fundamental structure in almost all processors. Thus, one
`
`of ordinary skill in the art would have understood that in Settsu the mini OS
`
`
`
`24
`
`

`

`module “receives a command over a computer bus to load a portion of boot
`
`
`
`data”.
`
`
`
`45. In Settsu, the “boot sequence” begins with the execution of firmware code
`
`module 6 [8:8-13, 8:21-23, 9:4-11]. From Settsu, one of ordinary skill in the art
`
`would have understood that execution of the firmware code module leads directly
`
`to the loading and subsequent execution of the mini OS module as explained
`
`directly above [Fig. 4, 9:4-11]. The mini OS module proceeds to load the OS
`
`main body module, which one of ordinary skill in the art would have understood
`
`to be the “portion of boot data” as explained above with respect to element 118.1.
`
`
`
`46. In a system Settsu as modified by Zwiegincew one of ordinary skill in the art
`
`would have understood that the hard disk drive 127 (disk storage 230) would be
`
`controlled partially by software and partially by the hard disk drive interface 132
`
`[Zwiegincew Fig. 1, 4:47-65]. Thus, in the combination one of ordinary skill in
`
`the art would have understood that the “boot device controller” in the
`
`combination of Settsu with Zwiegincew would include the hard disk drive
`
`interface 123, mini OS module 7 and the processor of Settsu or processing unit
`
`121 of Zwiegincew. It would be clear to one of ordinary skill in the art that in the
`
`combination of Settsu with Zwiegincew that the hard disk drive interface 127
`
`
`
`25
`
`

`

`
`
`receives commands over the system bus 123 because the structure shown is a
`
`basic personal computer system and this is a commonly known aspect of such
`
`systems [3:57-59, 4:47-65] and thus would meet the requirements of element
`
`118.3.
`
`
`
`47. Thus, one of ordinary skill in the art would have understood that Settsu as
`
`modified by Zwiegincew meets all the requirements of element 118.3.
`
`
`
`[118.4] accessing the preloaded portion of the boot data in the compressed form
`
`from the volatile memory;
`
`48. In Settsu, the OS loading and decompression processing module 50 has the
`
`function of decompressing a loaded functional module of the OS main body
`
`module 8 [14:6-12]. Fig. 14 details this process [6:35-38]. Step ST181 the OS
`
`loading and decompression module 50 loads one of the compressed OS
`
`functional modules from the OS Main Body 8 in to memory 2 in compressed
`
`form [Fig. 14, 3:16-25, 14:17-28]. At Step ST182 the loaded functional module
`
`is decompressed [Fig. 14, 14:28-37]. One of ordinary skill in the art would have
`
`understood that in order to decompress information stored in memory 2 it would
`
`be necessary to access that memory because the decompression is carried out by
`
`a processor that is not a

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