Patents by Inventor Jeffrey Kimmel

Jeffrey Kimmel has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7694302
    Abstract: The invention provides a method and system for scheduling tasks in an MP system, and provides parallel execution of those tasks while implicitly synchronizing access to resources used by that system. Tasks in the system are each assigned to a scheduling domain, thus associating those tasks with a set of resources controlled by that domain. A scheduler operating at each processor implicitly synchronizes those resources controlled by each domain, by scheduling only one task for each domain to execute concurrently in the system. Because each instance of the scheduler selects which task is next run independently of its processor, each domain can migrate from one processor to another; thus, each domain can have a task executing on any processor, so long as no domain has two tasks executing concurrently in the system. Thus, domains are not bound to any particular processor. Hence the method and system are symmetric.
    Type: Grant
    Filed: April 5, 2001
    Date of Patent: April 6, 2010
    Assignee: Network Appliance, Inc.
    Inventors: Vijayan Rajan, Jeffrey Kimmel, Steven R. Kleiman, Joseph Caradonna
  • Publication number: 20070100792
    Abstract: A system and method enabling transparent access to blocks, such as virtual disks, stored on a storage system using a file-based protocol. The system and method traps in-coming file-based protocol open commands to check for a predetermined modification to the file name. If the system and method detects the predetermined modification, then the virtual disk associated with the file name is exported to the client issuing the open command and the client receives a response from the storage system. The client, in response to receiving the response to the open command, creates a new device instantiation for reading and writing raw data to the virtual disk.
    Type: Application
    Filed: November 30, 2006
    Publication date: May 3, 2007
    Inventors: Arthur Lent, Brian Pawlowski, Vijayan Rajan, Jeffrey Kimmel, Mohan Srinivasan
  • Patent number: 7178137
    Abstract: An analyzer that analyzes instructions and data to determine where the instructions and data might result in incorrect results when run on a multiprocessor system. The instructions and data are divided into plural domains based on the symbols used to refer to those instructions and data, and the multiprocessor system is configured to use at most one processor at a time to execute instructions and to access data from any one domain. The analyzer preferably includes a reference analyzer and a table generator. The reference analyzer determines which of the instructions and data involve references outside of their domains, and determines which of the references outside of their domains are multiprocessor unsafe references. The report generator generates a report of the multiprocessor unsafe references. Also, a checker that dynamically determines where instructions and data result in domain violations when run on a multiprocessor system.
    Type: Grant
    Filed: April 5, 2001
    Date of Patent: February 13, 2007
    Assignee: Network Appliance, Inc.
    Inventors: Christopher Peak, Sathya Bettadapura, Jeffrey Kimmel
  • Publication number: 20060206603
    Abstract: A system integrates an intelligent storage switch with a flexible virtualization system to enable efficient service of file and block protocol data access requests for information stored on the system. A storage operating system executing on a storage system coupled to the switch implements the virtualization system to provide a unified view of storage to clients by logically organizing the information as named files, directories and logical unit numbers. The virtualization system is illustratively embodied as a file system having a write allocator configured to provide a flexible block numbering policy that addresses volume management capabilities, such as storage virtualization, at a finer granularity (e.g., a single block) than that of previous non-flexible storage virtualization schemes.
    Type: Application
    Filed: April 29, 2005
    Publication date: September 14, 2006
    Inventors: Vijayan Rajan, Brian Pawlowski, Jeffrey Kimmel, Gary Ross
  • Publication number: 20060075281
    Abstract: A storage system, such as a file server, receives a request to perform a write operation that affects a data block. In response, the storage system writes to a storage device the data block together with context information which uniquely identifies the write operation with respect to the data block. When the data block is subsequently read from the storage device together with the context information, the context information that was read with the data block is used to determine whether a previous write of the data block was lost.
    Type: Application
    Filed: September 27, 2004
    Publication date: April 6, 2006
    Inventors: Jeffrey Kimmel, Sunitha Sankar, Rajesh Sundaram, Nitin Muppalaneni, Emily Eng, Eric Hamilton
  • Publication number: 20050177770
    Abstract: A system and method for allowing more rapid takeover of a failed filer by a clustered takeover partner filer in the presence of a coredump procedure (e.g. a transfer of the failed filer's working memory) is provided. To save time, the coredump is allowed to occur contemporaneously with the takeover of the failed filer's regular, active file service disks by the partner so that the takeover need not await completion of the coredump to begin. This is accomplished, briefly stated, by the following techniques. The coredump is written to a single disk that is not involved in regular file service, so that takeover of regular file services can proceed without interference from coredump. A reliable means for both filers in a cluster to identify the coredump disk is provided, which removes takeover dependence upon unreliable communications mechanisms.
    Type: Application
    Filed: January 26, 2004
    Publication date: August 11, 2005
    Inventors: Susan Coatney, John Lloyd, Jeffrey Kimmel, Brian Parkison, David Bolen
  • Publication number: 20050172293
    Abstract: In a processing system which includes a physical processor that includes multiple logical processors, multiple domains are defined for multiple processes that can execute on the physical processor. Each of the processes is assigned to one of the domains. Processor utilization associated with the logical processors is measured, and each of the domains is allocated to a subset of the logical processors according to the processor utilization.
    Type: Application
    Filed: April 21, 2004
    Publication date: August 4, 2005
    Applicant: Network Appliance, Inc.
    Inventors: Alexander Petruncola, Nareshkumar Patel, Grace Ho, Jeffrey Kimmel