throbber
P. SHENOY
`
`UNITED STATES PATENT TRIAL AND APPEAL BOARD
`
`1
`
`VEEAM SOFTWARE CORPORATION
`Petitioner,
`
`1
`
`23
`
`)
`)
`4
`) Case No.
`vs.
`5
`) IPR 2013-00150
`6 SYMANTEC CORPORATION
`)
`Patent Owner.
`7
`-
`-
`-
`-
`-
`8
`DEPOSITION OF PRASHANT SHENOY, Ph.D.
`9
`WASHINGTON, D.C.
`10
`NOVEMBER 8, 2013
`11
`12 The deposition of PRASHANT SHENOY, Ph.D. was
`13 convened on Friday, November 8, 2013, commencing
`14 at 9:40 a.m., at the offices of Sterne Kessler
`15 Goldstein & Fox, 1100 New York Avenue,
`16 Northwest, Washington, D.C., Suite 800, before
`17 Paula G. Satkin, Registered Professional
`18 Reporter and Notary Public.
`19
`20
`21
`22
`23
`24
`25
`
`-
`
`-
`
`-
`
`-
`
`-
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`516-608-2400
`
`Symantec 2017
`Veaam v. Symantec
`IPR2013-00150
`
`

`

`P. SHENOY
`2
`
`4
`
`A P P E A R A N C E S
`
`ON BEHALF OF THE PETITIONER:
`BYRON PICKARD, ATTORNEY AT LAW
`DANIEL BLOCK, ATTORNEY AT LAW
`Sterne Kessler Goldstein & Fox
`1100 New York Avenue, N.W.
`Washington, D.C. 20005
`202.371.2540
`bpickard@skgf.com
`dblock@skgf.com
`
`ON BEHALF OF PATENT OWNER:
`JOSEPH RICHETTI, ATTORNEY AT LAW
`HASSAN ALBAKARI, ATTORNEY AT LAW
`Bryan Cave
`1290 Avenue of the Americas
`New York, NY 10104-3300
`212.541.2000
`joe.richetti@bryancave.com
`hassan.albakari@bryancave.com
`
`3
`
`C O N T E N T S
`
`PRASHANT SHENOY, Ph.D.
`
`EXAMINATION
`
`BY MR. RICHETTI
`BY MR. PICKARD
`BY MR. RICHETTI
`
`4
`137
`140
`
`1
`
`23
`
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`1
`
`23
`
`45
`
`6
`7
`
`89
`
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`1
`P R O C E E D I N G S
`2 Whereupon--
`
`PRASHANT SHENOY, Ph.D.
`a witness, called for examination, having been
`first duly sworn, was examined and testified as
`follows:
`EXAMINATION BY COUNSEL FOR PATENT OWNER
`BY MR. RICHETTI:
`Q. Good morning, Dr. Shenoy.
`A. Good morning.
`Q. Good to see you again.
`Can you please state your name and
`address for the record?
`A.
`Prashant Shenoy, 6 Bixby Court,
`North Hampton, Massachusetts 01060.
`Q. Dr. Shenoy, you know that you're
`attending today's deposition with respect to a
`declaration you provided for Veeam; is that
`correct?
`Yes.
`A.
`And if you could just give me just
`Q.
`some briefly just background of how it came to
`be that you were providing this declaration in
`this proceeding?
`
`34
`
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`5
`
`1
`So I was contacted by the Veeam
`A.
`2
`attorneys through an expert witness firm asking
`3
`if I would be willing to provide some expert
`4
`testimony. They provided me with the background
`5
`of what the patent was about. It was in my area
`6
`of expertise. So I had a meeting with the
`7
`attorneys and they told me they were going to
`8
`file an IPI and they would like me to provide my
`9
`expert opinion on several matters on which I
`10
`submitted in the declaration.
`11
`Q.
`And you mentioned that when you
`12
`looked at the '086 patent and reviewed it you
`13
`realized that it was in your area of expertise;
`14
`is that fair? I'm trying to restate your
`15
`testimony; is that fair?
`16
`A.
`Yes.
`17
`Q. What would you consider that area
`18
`of your expertise?
`19
`A.
`Broadly speaking, virtualization
`20 machines.
`21
`And I believe in a prior
`Q.
`22
`deposition you might have mentioned that one of
`23
`your areas of expertise was distributed systems;
`24
`is that correct?
`25
`A.
`Yes. Distributed systems, as
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`2 (Pages 2 to 5)
`
`516-608-2400
`
`

`

`P. SHENOY
`6
`
`8
`
`1 machines; correct?
`2
`A.
`Yes.
`3
`Q.
`Can you just elaborate a little
`4
`bit on your experience with virtual machines?
`5
`A.
`So as I mentioned before, my broad
`6
`area of research is distributed and operating
`7
`systems. Over the past probably ten, maybe
`8
`13 years my research has focused on aspects of
`9
`operating and distributed systems that relate to
`10
`virtualization. We have had a number of
`11
`research projects in this area. We've
`12
`collaborated with industry with projects in this
`13
`area and we've done papers on it.
`14
`Q.
`And what's a virtual machine?
`15
`A.
`So it is somewhat broad term in
`16
`the art. Broadly speaking, a virtual machine
`17
`implements or emulates an interface, depending
`18
`on what interface it emulates you can have
`19
`different types of virtual machines. You have
`20
`the hardware interface or the hardware on the
`21
`computer system. You have what's called
`22
`hardware level virtualization and hardware
`23
`virtual machines. We emulate -- when you have
`24
`OS level or operating system level virtual
`25 machines. You can even have application level
`9
`
`1 well.
`2
`And where does virtualization or
`Q.
`3
`virtual machines fit within distributed systems,
`4
`if at all?
`5
`A. Distributed ion operating systems,
`6
`that's the broad area. With the context of this
`7
`area there are several sub disciplines;
`8
`virtualization and networking, virtualization
`9
`technologies used for various tasks fall as a
`10
`sub discipline within this broad area.
`11
`Q. With respect to the '086 patent,
`12
`if you could just generally briefly describe
`13 when you read it what was your impression? What
`14 was the technology being described?
`15
`A.
`So the '086 patent broadly deals
`16 with virtual machines and more specifically
`17
`deals with backup and disaster recovery of
`18
`virtual machines.
`19
`Q.
`And that's reflected right in the
`20
`title; correct, for the '086 patent where it
`21
`says disaster recovery and backup using virtual
`22 machines?
`23
`Yes.
`A.
`24
`And, Dr. Shenoy, if you could look
`Q.
`25
`at Veeam Exhibit 1002 and just let me know if
`
`7
`
`1
`you recognize that document.
`2
`A.
`Yes. I do recognize this
`3
`document.
`4
`And what is it?
`Q.
`5
`It is the declaration I provided.
`A.
`6
`And, Dr. Shenoy, I apologize for
`Q.
`7
`jumping around, but you've been deposed before;
`8
`correct?
`9
`Yes.
`A.
`10
`In fact, it's been in this
`Q.
`11
`proceeding. Just to go over some ground rules,
`12
`and I know we've spent a considerable amount of
`13
`time together already, but if there's ever a
`14 moment in time in which you don't understand my
`15
`question, please let me know. I appreciate the
`16
`courtesy and the patience you demonstrated at
`17
`the last deposition and obviously someone with
`18
`your experience, I might misstate things from
`19
`time to time and I appreciate you just
`20
`straightening me out if I go off course or try
`21
`to work together to kind of get through the
`22
`deposition; is that fair?
`23
`A.
`Yes. Thank you.
`24
`Q. Okay. So, Dr. Shenoy, you
`25 mentioned that you have expertise with virtual
`
`1
`virtual machines like Java virtual machines that
`2
`emulate and interface with an application.
`3
`Q.
`And how do you create a virtual
`4 machine?
`5
`MR. PICKARD: Objection. Lacks
`6
`foundation.
`7
`THE WITNESS: It would depend on
`8
`the context. I just mentioned three or four
`9
`different types of virtual machines. Depending
`10
`on what specifically you are looking at in terms
`11
`of the type of virtual machine, the procedures
`12
`to create it is somewhat different.
`13
`BY MR. RICHETTI:
`14
`Q.
`So is a common type of virtual
`15 machine when you create a machine both hardware
`16
`and operating system level. So you have almost
`17
`like a complete computer machine, but it's
`18
`really just virtual?
`19
`MR. PICKARD: Object to form.
`20
`THE WITNESS: So the specific type
`21
`of virtual machine you just referred to, it is
`22
`the virtual machine itself is emulating the
`23
`hardware. The operating system that's running
`24
`on it is not emulated. It is a real operating
`25
`system that just runs on the virtual machine,
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`3 (Pages 6 to 9)
`
`516-608-2400
`
`

`

`P. SHENOY
`10
`
`1
`which provides the abstraction of a physical
`2 machine by emulating it.
`3
`BY MR. RICHETTI:
`4
`Q.
`So working with that type of
`5
`virtual machine, how would you create that one?
`6
`A.
`So you would need to use one of
`7
`the many products that are available,
`8
`virtualization products, and using those
`9
`virtualization products you can create a new
`10
`virtual machine, which would be empty when you
`11
`create it.
`12
`And what types of software are you
`Q.
`13
`aware of that create these -- the type of
`14
`virtual machine you just described?
`15
`A.
`There are several different
`16
`products that are available on the market,
`17
`VMware is a company that sells a range of
`18
`products in this space. Microsoft also sells
`19
`virtualization products. There are some that
`20
`are freely available at no cost like XEN virtual
`21 machine, KVM, that are available as part of the
`22
`Linux operating system, which is free. There
`23
`are several others. These are some examples.
`24
`Q.
`And which ones have you worked
`25
`with in your career?
`
`12
`
`1
`You could use it for either one.
`A.
`2
`You mentioned about KVM. Is that
`Q.
`3
`the name product, the product of a name or is it
`4
`the company that makes it?
`5
`A.
`It stands for kernel virtual
`6 machine. It does virtualization technology that
`7
`is part of the Linux operating system. It is an
`8
`open source community generated technology.
`9
`Q. Now, with respect to the VM
`10
`products, you've mentioned there are two. One
`11
`that works on workstation and one that works on
`12
`a server?
`13
`Yes.
`A.
`14
`Can you just briefly describe the
`Q.
`15
`differences between the two systems?
`16
`A.
`So the virtual or VMware that runs
`17
`on a workstation, it requires an operating
`18
`system to be already running on the machine.
`19
`This operating system is typically known as the
`20
`host of the operating system and then the
`21
`virtualization product from VMware allows you to
`22
`create virtual machine that run on top of the
`23
`host operating system.
`24
`On the server side there are a few
`25
`different ways to run virtualization
`
`11
`A. Worked with VMware, XEN, X-E-N,
`that's how you spell it, KVM, an acronym.
`Q. Okay.
`A.
`I've used those.
`Q.
`And you mentioned you've used
`VMware products; is that correct?
`A.
`Yes.
`Q. What types of VMware products have
`you used?
`As part of our research we have
`A.
`used a few different products that they make.
`That is the workstation product, which you run
`on a typical PC. There is the ESX server
`product, which would run on servers. So at
`least those two.
`Q.
`And you mentioned you worked with
`virtualization products from XEN?
`A.
`Yes.
`Q. Which ones?
`A.
`So XEN is the name of the
`virtualization product. There is a different
`company that sells it. I'm not sure of the name
`of the company, but it refers to XEN.
`Q.
`Is that for a workstation or a
`server environment?
`
`13
`1
`technologies. The ESX product in particular
`2
`runs on what is referred to bare metal. So you
`3
`don't need an operating system to run. You can
`4
`run the virtual machine, monitor of the virtual
`5 machines kernels as it's referred to directly on
`6
`the physical machine. There are other products
`7
`that also run the servers that work like the
`8 workstation product. They need an operating
`9
`system to be running and they run on top.
`10
`Q.
`And for the workstation VMware
`11
`product, did it have a name?
`12
`A.
`So there are several different
`13
`variants of it that VMware sells. One is called
`14
`VMware Workstation is a product that is sold for
`15 MAC's operating system. So, therefore, it was
`16
`VMware Fusion. So I remember at least those
`17
`two.
`18
`Q.
`These are the two that you worked
`19 with; correct?
`20
`A.
`Those are the two that I worked
`21 with. Yes.
`22
`Q.
`And with respect to the ESX server
`23 which -- do you know which versions of the
`24
`server software you worked on?
`25
`A.
`I don't recollect the exact
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`4 (Pages 10 to 13)
`
`516-608-2400
`
`

`

`16
`the creation of the virtual machine through a
`software virtualization product such as ESX
`server is something that is going to be
`initiated by a user; is that fair?
`A.
`It could be a user or it could be
`a program that can create virtual machines, as
`well.
`
`P. SHENOY
`14
`1
`virtual numbers. All I can say is that we have
`2
`used it in our research for several years now.
`3
`Q.
`And by several years, I know you
`4 may not be able to give us an exact date, but
`5
`just an order of magnitude. Does that mean
`6
`within the last five years or you've been using
`7
`within the last ten years, the last 20 years?
`8
`A.
`At least for five years.
`9
`Q.
`So in working with, just as an
`10
`example, the ESX server VMware software, have
`11
`you had an opportunity to create a virtual
`12 machine?
`13
`The research project was my
`A.
`14
`graduate students. So we have created virtual
`15 machines together as part of the project.
`16
`Q.
`I'm sorry. So does that mean you
`17
`supervised it or did you actually create the
`18
`virtual machine?
`19
`A.
`I think supervised would be a more
`20
`reasonable way to put it.
`21
`Q. Okay. Is another name for these
`22
`virtual machine products called the virtual
`23 machine monitor? Are you familiar with that
`24
`term?
`25
`
`MR. PICKARD: Objection.
`
`1
`2
`3
`4
`5
`6
`7
`8
`Q. Okay. So we've talked about the
`9
`virtualization software such as VMware ESX
`10
`server allows you to create the virtual machine
`11
`and it allows you to manage the resources of the
`12
`virtual machine. Is there anything else that
`13
`the software permits you to do?
`14
`A.
`So I use the term manage very
`15
`broadly. It may well have a variety of
`16
`different things you could to do to manage
`17
`virtual machines. Just an example of these may
`18
`be pausing virtual machines, suspending them,
`19
`starting them. There are several different
`20
`functions the virtualization software might
`21
`provide. I put all of those under the
`22 management category.
`23
`Q.
`I appreciate that.
`24
`You mentioned pausing the machine.
`25 Why would you want to pause a virtual machine?
`17
`
`15
`
`1
`Compound.
`2
`THE WITNESS: I am familiar with
`3
`the term virtual machine monitor. I would not
`4
`say it's another name for all of those products.
`5
`At least the ESX server uses a virtual machine
`6 monitor.
`7
`BY MR. RICHETTI:
`8
`Q.
`And what does that mean to you,
`9
`virtual machine monitor?
`10
`A.
`The virtual machine monitor is a
`11
`piece of software that is emulating hardware and
`12 managing the virtual machines that are running
`13
`on top.
`14
`So is it fair to say that the
`Q.
`15
`virtualization software, just picking an example
`16
`of the one you used like the ESX server, has at
`17
`least two roles. There's the creation of the
`18
`virtual machine and then the management of the
`19
`virtual machine while it's operating?
`20
`A.
`Typically the creation is done by
`21
`a user. The virtual machine monitor would
`22
`perform the necessary steps to execute that
`23
`command. Once created the virtual machine
`24 monitor will manage the virtual machine.
`25
`Q.
`And so based on your experience,
`
`1
`It is an operation that is
`A.
`2
`supported by virtualization technologies
`3
`broadly. It is equal to in a laptop when you
`4
`close the lid of the laptop the operating system
`5
`pauses and then later on you can start working
`6 with the machine again. This provides a similar
`7
`function to pause the execution of the virtual
`8 machine for any reason that the user may want to
`9
`pause it for.
`10
`Q.
`So when you say pause, Dr. Shenoy,
`11
`are you saying it's more like when a computer
`12
`goes to sleep? Is that the analogy you're
`13
`drawing when you say you close the lid on the
`14
`laptop?
`15
`So pause could mean several
`A.
`16
`different things because it's a broad term.
`17
`There are different ways of pausing a virtual
`18 machine. Putting a computer to sleep would be
`19
`one of them, yes.
`20
`Q. What's another way that you could
`21
`pause a machine?
`22
`A.
`You could pause it, so there are
`23 many ways to pause a virtual machine. For
`24
`instance, you could pause it such that it stays
`25
`in memory and you can resume the memory. You
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`5 (Pages 14 to 17)
`
`516-608-2400
`
`

`

`20
`
`situation, if the device is turned off what
`happens?
`If you suspend to RAM, since data
`A.
`is still resident in RAM, hasn't been copied
`out, you simply switch off the physical machine,
`and all the contents of volatile memory are
`lost.
`
`P. SHENOY
`18
`1
`could pause it -- if you want to pause it for a
`2
`longer duration you could pause it so that you
`3
`could put the data on disk and resume it. Those
`4 would be two examples.
`5
`Q.
`And do those examples have names
`6
`or are they just generally fall under the pause
`7
`category?
`8
`There is a range of names that are
`A.
`9
`used in the art. So very broadly speaking,
`10
`there are terms like hibernate, suspend to disk,
`11
`suspend to RAM and others that are used in
`12
`different context.
`13
`Q.
`Can you explain to me what the
`14
`term hibernation means?
`15
`A.
`So it is somewhat broad term that
`16
`is used in operating systems. One specific way
`17
`to hibernate a virtual machine is to copy the
`18
`data of the virtual machine from memory to disk
`19
`and then if you want to start the virtual
`20 machine again you could copy that data back from
`21
`the disk back to memory, start the virtual
`22 machine.
`23
`And when you say "memory," are you
`Q.
`24
`referring to a specific type of memory? Is it
`25
`RAM, for instance?
`
`1
`2
`3
`4
`5
`6
`7
`8
`Is that why you mentioned
`Q.
`9
`previously that if you're going to hibernate for
`10
`a longer period of time you might want to
`11
`transfer the data to the disk, but if it's going
`12
`to be a shorter period of time you might just
`13
`suspend to RAM?
`14
`A.
`It depends on what the user is
`15
`trying to accomplish. If the user wants to
`16
`suspend for a short period and the machine
`17
`continues to be powered on, you can simply start
`18
`from that point on. If you want to start from
`19
`exactly where you left off on that virtual
`20 machine you could copy the memory contents to
`21
`disk and then copy it back when you unhibernate,
`22
`but if the contents of the virtual machine are
`23
`in disk you can also start the virtual machine
`24
`using what's known as a cold boot. You simply
`25
`boot up the virtual machine at that point.
`
`19
`1
`RAM is an example of memory, yes.
`A.
`2
`Q. Would it generally fall under the
`3
`category of volatile memory when you're
`4
`referring to the word memory?
`5
`A.
`In this specific context, yes, it
`6
`is volatile memory.
`7
`Q.
`You mentioned the concept of
`8
`suspending to disk. What's that?
`9
`A.
`Suspend -- the hibernate example I
`10
`just gave is a form of suspending to disk.
`11
`Q.
`And so in that situation before
`12
`the computer hibernates or goes to sleep data is
`13
`going to be copied from the memory to the disk;
`14
`correct?
`15
`A.
`Yes.
`16
`Q.
`And you mentioned suspend to RAM.
`17 What's that?
`18
`A.
`So suspend to RAM allows you to
`19
`pause the execution of the virtual machine, but
`20
`the data is kept in memory, unlike the previous
`21
`example where it's copied to disk and when you
`22
`start the virtual machine again you just use
`23
`that data that's been sticking around in memory
`24
`and just start the virtual machine.
`25
`Q.
`And so in the suspend to RAM
`
`21
`
`1
`Q. Dr. Shenoy, based on your
`2
`experience using virtualization products, can
`3
`you create multiple virtual machines within one
`4
`computer system, one physical computer?
`5
`A.
`If you're using hardware
`6
`virtualization, yes, you can.
`7
`Q.
`And just so I have an
`8
`understanding, we're talking about having one
`9
`physical computer that I'm working on, but yet I
`10
`can have multiple virtual machines that I could
`11
`be running different applications on; is that
`12
`fair? Can you explain that a little bit to me.
`13
`MR. PICKARD: Objection.
`14
`Compound.
`15
`THE WITNESS: Each virtual machine
`16
`if you're using hardware virtualization is
`17
`emulating a physical machine. It is a software
`18
`emulation of the hardware on the physical
`19 machine. You can create multiple virtual
`20 machines on a physical computer. Each virtual
`21 machine would get a portion of the resources
`22
`from the physical computer and within each
`23
`virtual machine you can run an operating system
`24
`and any application that you may wish to run.
`25
`BY MR. RICHETTI:
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`6 (Pages 18 to 21)
`
`516-608-2400
`
`

`

`P. SHENOY
`22
`1
`Q.
`You mentioned previously when we
`2 were discussing the '086 patent, Dr. Shenoy,
`3
`that it is generally directed to disaster
`4
`recovery and back ups using the virtual machine.
`5
`Do you recall that testimony?
`6
`A.
`Yes.
`7
`Q. What is backup software?
`8
`A.
`Backup software typically allows
`9
`you to take a copy of the data of whatever it is
`10
`you're trying to backup and put it on a
`11
`different machine or a different disk and if the
`12
`data gets corrupted due to hardware failure you
`13
`can go to that backup copy and restore that
`14
`data.
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`24
`
`1
`Relevance.
`2
`THE WITNESS: I have looked at
`3
`their web page. My understanding is they also
`4
`provide backup software for virtual machines.
`5
`BY MR. RICHETTI:
`6
`Q.
`And have you had any experience
`7 working with Symantec backup software systems?
`8
`MR. PICKARD: Objection.
`9
`Relevance.
`10
`THE WITNESS: I haven't used those
`11
`products, but as we have discussed previously, I
`12
`know about the bare metal restore product, for
`13
`instance. It would fall under that category.
`14
`BY MR. RICHETTI:
`15
`Q.
`Is it your understanding Symantec
`16
`provides software products -- backup software
`17
`products for virtual machines, as well?
`18
`MR. PICKARD: Objection.
`19
`Relevance.
`20
`THE WITNESS: I don't know much
`21
`about Symantec's line of products exactly what
`22
`they do and do not do.
`23
`BY MR. RICHETTI:
`24
`Q.
`That's fair. I was just asking.
`25
`I guess now would be a good time
`25
`
`And have you used backup software
`Q.
`systems in your research?
`A. We have used it more generally for
`backing up any and all of our data, which could
`include research data, as well.
`Q. What backup software products have
`you used?
`I would say we've used a range of
`A.
`backup products. There are some open source
`ones that come with the Linux operating system.
`There are commercial ones like CrashPlan that we
`23
`
`1
`use to backup data on our computers.
`2
`Q. Do you know the names of the open
`3
`source backup software programs you've used?
`4
`A.
`I think there is a utility called
`5
`TAR, T-A-R, that is used in Linux to create
`6
`backup copies of data. There are other
`7
`utilities like Glass 3 that also are backup
`8
`products.
`9
`And have you personally used those
`Q.
`10
`systems or is it generally you're supervising
`11
`students who may be using them or is it both?
`12
`A.
`In this case both.
`13
`Q.
`And which ones have you
`14
`specifically used?
`15
`A.
`All of those.
`16
`Q. Do you have any experience with
`17
`Veeam's software products?
`18
`MR. PICKARD: Objection.
`19
`Relevance.
`20
`THE WITNESS: I do not have any
`21
`experience using them.
`22
`BY MR. RICHETTI:
`23
`Q. Do you have an understanding of
`24 what their products are?
`25
`MR. PICKARD: Objection.
`
`1
`if I can direct your attention to the '086
`2
`patent, Dr. Shenoy. I believe it is
`3
`Exhibit 1001. Do you see that, sir?
`4
`A.
`Yes.
`5
`Q.
`I'm sure you've had more than one
`6
`opportunity to review this patent; is that
`7
`correct?
`8
`Yes.
`A.
`9
`If I could direct your attention
`Q.
`10
`to Figure 1.
`11
`A. Okay.
`12
`Q.
`Can you help me step me through
`13
`this figure, I'll actually point to some of the
`14
`components and I just want to make sure we're on
`15
`the same page about the various components; is
`16
`that fair?
`17
`I may have to look at the
`A.
`18
`specification in some of these cases, but yes.
`19
`Q.
`Just like we did the last time
`20 when we had the '299 patent in front of us,
`21
`always feel free. If there is anything I can do
`22
`to help point you to the relevant sections I
`23 would be more than happy to do so.
`24
`A.
`Sure.
`25
`Q.
`Computer system 10. What's that?
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`7 (Pages 22 to 25)
`
`516-608-2400
`
`

`

`P. SHENOY
`26
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`28
`
`storage. Yes.
`Q.
`And box number 36, it's labeled
`
`I/O?
`
`Yes.
`A.
`Q. What's that?
`A.
`So the specification says it may
`be any type of I/O device such as modems, I/O
`devices -- audio devices, video devices, it
`gives a list of the different input/output
`devices. It uses the word may, so it may be any
`of those, it may not be.
`Q. Okay. And there's a box VM 2,
`16B. Do you see that?
`A.
`Yes.
`Q.
`Is that referring to a second
`virtual machine within computer system 10?
`A.
`Yes.
`Q.
`And the box that says app 2, is it
`your understanding that that's just an
`application that's running or being emulated on
`virtual machine 2?
`A.
`Yes.
`Q.
`And then there's a box called
`virtual machine console 16C. Do you see that?
`A.
`Yes.
`
`1
`A.
`So that is depicting a physical
`2 machine which have several components that are
`3
`shown in the figure.
`4
`Q. Do you understand that to be a
`5
`physical computer as we were discussing it
`6
`earlier?
`7
`The figure has some additional
`A.
`8
`components such as the backup medium, which may
`9
`not fall under the category of a physical
`10 machine that we discussed earlier, but generally
`11
`speaking, the computer system would be a
`12
`physical machine.
`13
`Q.
`And Dr. Shenoy, do you see virtual
`14 machine 16A -- virtual machine 1, 16A?
`15
`A.
`Yes.
`16
`Q. What's your understanding of what
`17
`that is?
`18
`So this is a virtual machine that
`A.
`19
`is mimicking the hardware of a physical machine.
`20
`Q.
`And you see the box, application
`21
`1, number 28?
`22
`A.
`Yes.
`23
`Q. What's that?
`24
`A.
`So that would be an application
`25
`that a user is executing inside the virtual
`
`27
`
`1 machine.
`2
`And there's a box that's labeled
`Q.
`3
`0/S 30. Do you see that, sir?
`4
`A.
`Yes.
`5
`Q. What's that?
`6
`A.
`That's the operating system that's
`7
`executing inside the virtual machine.
`8
`Q.
`And CPU 32. Do you see that?
`9
`A.
`Yes.
`10
`Q. What's that?
`11
`A.
`That's a virtual processor that is
`12
`being used by the virtual machine to execute on,
`13
`emulated by the virtual machine.
`14
`Q.
`And there's a box 34 called
`15
`labeled storage. Do you see that?
`16
`A.
`Yes.
`17
`Q.
`And what's that?
`18
`A.
`So the specification says this
`19
`could be any type of a storage device such as
`20 memory, disk storage, tape storage, and so on.
`21
`It says it may include any of them.
`22
`Q.
`Right. So would this be
`23
`considered virtual storage since it's inside the
`24
`virtual machine?
`25
`A.
`It is labeled as a virtual
`
`29
`
`1
`Q. What's that?
`2
`A.
`So that's a virtual machine that
`3
`runs what's referred to as a console operating
`4
`system on this computer system.
`5
`Q. What's the console operating
`6
`system?
`7
`The console operating system is an
`A.
`8
`O/S using which the user can interact with the
`9
`computer system to manage the other virtual
`10 machine.
`11
`Q.
`And so in this figure virtual
`12 machine console 16C would allow the user to
`13 manage virtual machine 1, 16A and virtual
`14 machine 2, 16B?
`15
`A.
`That would be one of its
`16
`functions, yes.
`17
`Q.
`And then in that box there's a box
`18
`called backup program 42. Do you see that?
`19
`A.
`Yes.
`20
`Q. What's that?
`21
`A.
`It's a program that may be used to
`22
`backup data on the virtual machines.
`23
`Q.
`And in this instance, since it's
`24
`in virtual machine console 16C, would this
`25
`backup program be used to backup the data for
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`8 (Pages 26 to 29)
`
`516-608-2400
`
`

`

`P. SHENOY
`30
`virtual machine 1, 16A or virtual machine 2,
`16B?
`
`1
`2
`3
`The specification says it may be
`A.
`4
`used to do that.
`5
`Q.
`And is that your understanding of
`6 what this drawing depicts?
`7
`A.
`Yes.
`8
`Q.
`And I also noticed that there's a
`9
`backup program down in 22 and it's labeled 42,
`10
`as well. Do you see that?
`11
`A.
`Yes.
`12
`Q. Do you know what that's referring
`13
`14
`It may be a copy of the backup
`A.
`15
`program as it is stored on disk.
`16
`Q. Now, there's a box labeled VM
`17
`kernel 18. Do you see that?
`18
`A.
`Yes.
`19
`Q. What is it?
`20
`A.
`So the VM kernel is the piece of
`21
`software that allows management or enables
`22 management of the virtual machines that are
`23
`shown in the picture.
`24
`Q. Would it also enable creation of
`25
`virtual machine 1, 16A?
`
`to?
`
`31
`Those may be one of the functions
`A.
`supported by the kernel, yes.
`Q. Now, if I could direct your
`attention, Dr. Shenoy, to column 5, line 58,
`roughly, and you can feel free to read the whole
`paragraph that spills onto column 6 up to line
`2. And when you've had a chance to read that
`paragraph, if you could let me know that would
`be good.
`A. Okay.
`Q.
`And if I could direct your
`attention to column 5, line 61 is where it
`begins. The sentence begins "for example." Do
`you see that?
`A.
`Yes.
`Q.
`It says, "for example, a time
`division multiplex scheme may be used to assign
`time slots to each virtual machine." Do you see
`that? What does that mean to you?
`A.
`So as the previous sentence says,
`the VM kernel may schedule virtual machines.
`Time division multiplexing is an example of such
`a scheduling scheme and it says it may be used
`or there may be other things that could be used,
`as well.
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`32
`
`1
`And so just so I understand, is it
`Q.
`2
`saying that virtual machine 1 would get allotted
`3
`a certain period of time to use certain
`4
`resources and then virtual machine 2 would have
`5
`an allotted certain period of time and the VM
`6
`kernel would be managing that use of resources
`7
`on the physical computer?
`8
`A.
`So what is being described here is
`9
`processor scheduling, an allocation of
`10
`processors virtual machines. There may be other
`11
`ways to manage other resources, but this is
`12
`simply describing how virtual machines get
`13
`scheduled on the processor of the physical
`14 machine.
`15
`So tying that back to Figure 1 and
`Q.
`16
`our discussion, so would that be the VM kernel
`17
`would be managing the virtual processor 32 and
`18
`its ability to utilize the computer system 10's
`19 microprocessor?
`20
`A.
`So when the VM kernel schedules a
`21
`virtual machine for execution it starts
`22
`executing and it starts emulating the physical
`23
`processor using the resources of the
`24
`underlying physical -- rather the virtual
`25
`processor using the resources of the underlying
`33
`
`1
`physical machine.
`2
`Q.
`So can you have two virtual
`3 machines emulating at the same time?
`4
`A.
`If you have multiple processors on
`5
`the physical machine or multiple course you
`6
`could be emulating them concurrently.
`7
`Q.
`If you only have one processor
`8
`then you may have to come up with some scheme in
`9
`which the physical processor's resources are
`10
`allocated to the different virtual machines at
`11
`different times; is that fair?
`12
`A.
`If you only have one processor and
`13
`it doesn't support any form of trading
`14
`concurrently then you would have to take turns
`15
`scheduling each virtual machine on that
`16
`processor.
`17
`If I could direct your attention
`Q.
`18
`to the next sentence in column 5. It states,
`19
`"additionally, the VM kernel may handle the
`20
`suspending and resuming of virtual machines
`21
`responsive to suspend and resume commands." Do
`22
`you see that?
`23
`A.
`Yes.
`24
`Q. What does that refer to?
`25
`A.
`So it's saying that the virtual
`
`212-267-6868
`
`VERITEXT REPORTING COMPANY
`
`9 (Pages 30 to 33)
`
`516-608-2400
`
`

`

`P. SHENOY
`34
`1 machine kernel may support commands like
`2
`suspending virtual machine or resuming a virtual
`3 machine and implement those commands.
`4
`Q.
`Is it fair to say -- please
`5
`straighten me out if I'm wrong. Do all the
`6
`virtualization products that we were discussing
`7
`previously and that you're aware of, do they all
`8
`contain a VM kernel?
`9
`A. Not all of them.
`10
`Q.
`So some do, some don't?
`11
`A.
`Like if you have an application
`12
`level virtual machine like the Java virtual
`13 machine it would have something called a JVM,
`14 which typically would refer to as a VM kernel.
`15
`Q. Which virtualization products
`16 would have a VM kernel, based on your
`17
`experience?
`18
`A.
`An example may be the ESX server
`19
`product we discussed earlier. There may be
`20
`others, but that one would have a virtual
`21 machine kernel.
`22
`Q. What about the one you mentioned
`23
`about the VMware product that works on the
`24 workstation? Would that have a VM kernel?
`25
`A.
`So as is also mentioned in the
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`36
`
`If I could direct your attention
`Q.
`back to Figure 1, Dr. Shenoy, there's a box
`labeled hardware 20. What's that?
`A.
`The box refers to the hardware on
`the physical machine.
`Q.
`And there's a symbol that's
`labeled 22. I guess it's in the shape of a
`disk. What's that?
`A.
`It's a storage device such as a
`
`disk.
`
`And is this the computer system
`Q.
`storage device, like the physical storage
`device?
`Yes.
`A.
`And within the physical disk 22
`Q.
`there's a box labeled number 40 that says VM 1
`image. Do you see that, sir?
`A.
`Yes.
`Q. Do you know what that's referring
`
`to?
`
`As the specification, it says the
`A.
`kernel may write an image of a virtual machine
`to the storage device. In that case the VM
`image may be referring to the image, but it just
`says may.
`
`35
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`
`specification here, you would have a virtual
`kernel, virtual machine kernel in that context,
`but it would be running on a host operating
`system, which is not directly depicted in this
`figure. So you would have to assume that the VM
`kernel includes an operating system and the
`virtualization software in that case. The
`specification ref

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