1 /*
2 * Copyright 2000-2002 Sun Microsystems, Inc. All Rights Reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20 * CA 95054 USA or visit www.sun.com if you need additional information or
21 * have any questions.
22 *
23 */
24
25 package sun.jvm.hotspot.debugger;
26
27 /** This class implements an LRU page-level cache of configurable page
28 size and number of pages. It is configured with a PageFetcher
29 which enables it to transparently satisfy requests which span
30 multiple pages when one or more of those pages is not in the
31 cache. It is generic enough to be sharable among debugger
32 implementations. */
33
34 import sun.jvm.hotspot.utilities.*;
35
36 public class PageCache {
37 /** The pageSize must be a power of two and implicitly specifies the
38 alignment of pages. numPages specifies how many pages should be
39 cached. */
40 public PageCache(long pageSize,
|
1 /*
2 * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores,
20 * CA 94065 USA or visit www.oracle.com if you need additional information or
21 * have any questions.
22 *
23 */
24
25 package sun.jvm.hotspot.debugger;
26
27 /** This class implements an LRU page-level cache of configurable page
28 size and number of pages. It is configured with a PageFetcher
29 which enables it to transparently satisfy requests which span
30 multiple pages when one or more of those pages is not in the
31 cache. It is generic enough to be sharable among debugger
32 implementations. */
33
34 import sun.jvm.hotspot.utilities.*;
35
36 public class PageCache {
37 /** The pageSize must be a power of two and implicitly specifies the
38 alignment of pages. numPages specifies how many pages should be
39 cached. */
40 public PageCache(long pageSize,
|