Ex Parte SATYAVOLU et alDownload PDFPatent Trial and Appeal BoardJul 30, 201814280021 (P.T.A.B. Jul. 30, 2018) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE FIRST NAMED INVENTOR 14/280,021 05/16/2014 Surya SATYAVOLU 30636 7590 07/31/2018 FAY KAPLUN & MARCIN, LLP 150 BROADWAY, SUITE 702 NEW YORK, NY 10038 UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www .uspto.gov ATTORNEY DOCKET NO. CONFIRMATION NO. 40101/23501 (2013.003) 7783 EXAMINER PATEL, NITIN C ART UNIT PAPER NUMBER 2116 MAIL DATE DELIVERY MODE 07/31/2018 PAPER Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte SURYA SATYA VOLU and THIERRY PREYSSLER1 Appeal 2017-011326 Application 14/280,021 Technology Center 2100 Before JASON V. MORGAN, BRUCE R. WINSOR, and AARON W. MOORE, Administrative Patent Judges. MORGAN, Administrative Patent Judge. DECISION ON APPEAL STATEMENT OF THE CASE Introduction This is an appeal under 35 U.S.C. § 134(a) from the Examiner's Final Rejection of claims 1-20. We have jurisdiction under 35 U.S.C. § 6(b ). We REVERSE. Invention Appellant discloses causing a "processor to perform operations including mapping a memory area storing a segment of code for a kernel of the system during an initialization time"; "executing the segment of code 1 Appellant is the applicant, Wind River Systems, Inc., identified in the Appeal Brief as the real party in interest. App. Br. 2. Appeal 2017-011326 Application 14/280,021 during the initialization"; and "umnapping a portion of the memory area for the kernel after the segment of code has been executed." Abstract. The claimed invention is directed to embodiments where, in re-mapping step 270, portions of memory 130 containing application payload 332 and initialization data/initialization code 332 are un-mapped. Spec. ,r 20, Figs. 2-3. Illustrative Claim (key limitations emphasized) 1. A non-transitory computer-readable storage medium storing a set of instructions executable by a processor, the set of instructions, when executed by the processor, causing the processor to perform operations comprising: during an initialization time of a system, mapping a memory area storing a segment of code for a kernel of the system; during the initialization time, executing the segment of code; and after the segment of code has been executed, unmapping a portion of the memory area for the kernel, wherein the segment of code is stored in the portion of the memory area that is unmapped in the unmapping step, and wherein the segment of code comprises an application payload. Rejections The Examiner rejects claims 1, 3-7, 9, 10, 12-16, and 18-20 under 35 U.S.C. § I03(a) as being unpatentable over Berenbaum et al. (US 2009/0063799 Al; published Mar. 5, 2009) ("Berenbaum"), Arditti et al. (US 2012/0096252 Al; published Apr. 19, 2012) ("Arditti"), and Miller et al. (US 2006/0277233 Al; published Dec. 7, 2006) ("Miller"). Non-Final Act. 2-11. 2 Appeal 2017-011326 Application 14/280,021 The Examiner rejects claims 2 and 11 under 35 U.S.C. § I03(a) as being unpatentable over Berenbaum, Arditti, Miller, and Graham et al. (US 2013/0151849 Al; published June 13, 2013) ("Graham"). Non-Final Act. 12. The Examiner rejects claims 8 and 1 7 under 3 5 U.S. C. § 1 0 3 (a) as being unpatentable over Berenbaum, Arditti, Miller, and Patel et al. (US 2013/0132702 Al; published May 23, 2013) ("Patel"). Non-Final Act. 12- 13. FINDINGS AND CONTENTIONS Miller teaches a handheld calculator with the ability to disable and re- enable functionality. See Miller Abstract. Specifically, "individual bits in [a Disable/Re-enable] space are mapped to programs and other functionality the calculator is programmed to execute." Id. ,r 27. "A flag bit set to 1 indicates that the associated Program is enabled, while a flag bit set to 0 indicates that the associated Program is disabled." Id. The operating system is modified to check this Disable/Re-enable space "before running a Program it has been commanded to execute." Id. ,r 28. In rejecting claim 1 as obvious, the Examiner finds that disabling a program in Miller by setting the associated flag bit to 0, such that the program will not be executed by the operating system, teaches or suggests unmapping a portion of the memory area for the kernel, wherein the segment of code is stored in the portion of the memory area that is unmapped in the unmapping step. See Non-Final Act. 4 (citing Miller Abstract, Fig. 4, ,r,r 27- 28); see also Ans. 4--5 (further citing Miller Fig. 1, ,r,r 21-22, 26). The Examiner also finds that Berenbaum's disabling of access to memory in an address range teaches or suggests the claimed unmapping of a 3 Appeal 2017-011326 Application 14/280,021 portion of the memory for the kernel. Ans. 3--4 (citing, e.g., Berenbaum ,r,r 4, 17, 19, 59---64, 76, 80-82, Fig. 4). Appellant contends the Examiner erred because although Miller's "operating system is modified to check the Disable/Re-enable space," "the operating system is still permitted to show the memory locations of all programs." App. Br. 4--5 (citing Miller ,r 28). Appellant argues "Miller makes no mention of anything being stored in a portion of memory that is unmapped." App. Br. 5. Appellant further argues that because a disabled program in Miller can still be erased by the user, a disabled program in Miller is still mapped. Id. (citing Miller ,r 28); see also Reply Br. 4--5. Appellant further argues Berenbaum prevents "access to data by masking/blocking data read from the memory" rather than unmapping a portion of memory. Reply Br. 6. ANALYSIS Appellant's contention that an artisan of ordinary skill "would unders[t]and that a portion of the memory that has been unmapped from the kernel means that the kernel no longer has any access to a portion of the memory where the kernel previously had full access privileges ( e.g. read, write, execute)" (App. Br. 5) accords with the Specification. Specifically, the Specification discloses mapping and unmapping of areas of memory, where mapping particular locations within memory grants the kernel access to resources and where unmapping removes such access such that the kernel, even if compromised, is unable to access the resources. See, e.g., Spec. ,r,r 12, 15, Fig. 3. Miller's use of a Disable/Re-enable space does not have the same features of the claimed unmapping. Rather than making a disabled program 4 Appeal 2017-011326 Application 14/280,021 inaccessible to an operating system ( e.g., the kernel), Miller's Disable/Re- enable space merely informs the operating system whether the program should be allowed to be displayed, executed, or edited. Miller ,r 28. As Appellant correctly notes, "[t]he OS could still be permitted to show the memory locations of all Programs, for example in a memory display mode, provided the OS in such mode did not permit the user access to the Program other than, perhaps, to erase it." Id.; see also App. Br. 5; Reply Br. 4--5. We agree with Appellant that this continued access to a disabled program----even if only for purposes of displaying memory locations of all programs, and perhaps erasing a disabled program-illustrates that setting a program's associated flag bit to zero does not remove all access to the program. See App. Br. 5; Reply Br. 4--5. Furthermore, Miller requires modifications to the operating system for the Disable/Re-enable space to have any effect. See Miller ,r 28 ("the OS is modified to check the Disable/Re-enable space in flash memory before running a Program."). This further shows that setting a program's associated flag bit to zero does not unmap the program to prevent the operating system from having any access to the program. Instead, the operating system-- having continued access to the program-must use programmed discretion to make use of the flag bit to restrict use of the program. The Examiner does not show that Berenbaum cures the noted deficiency of Miller. As Appellant correctly notes, Berenbaum disables access to a portion of memory without unmapping the memory. Reply Br. 6. Rather, Berenbaum blocks access to the memory by masking data bits read from a disabled memory address. See Berenbaum ,r 99. This obfuscates the 5 Appeal 2017-011326 Application 14/280,021 underlying data, but the Examiner has not shown that data obfuscation falls within a reasonably broad interpretation of "unmapping." For these reasons, we agree with Appellant that the Examiner's findings do not show that Miller or Berenbaum teach or suggest "unmapping a portion of the memory area for the kernel, wherein the segment of code is stored in the portion of the memory area that is unmapped in the unmapping step," as recited in claim 1. The Examiner does not show that Arditti, Graham, or Patel cure the noted deficiency of Miller and Berenbaum. Accordingly, we do not sustain the Examiner's 35 U.S.C. § 103(a) rejection of claim 1, or the Examiner's 35 U.S.C. § 103(a) rejections of claims 2-20, which contain similar recitations. DECISION We reverse the Examiner's decision rejecting claims 1-20. REVERSED 6 Copy with citationCopy as parenthetical citation