Автор: Пользователь скрыл имя, 09 Марта 2011 в 11:30, курсовая работа
Цель исследования – выявить эффективность алгоритмов кэширования данных LRU, LFU.
Задачи исследования:
•проанализировать предметную область;
•спроектировать и реализовать программную систему для анализа эффективности алгоритмов кэширования данных LRU, LFU;
•провести сравнительный анализ эффективности алгоритмов кэширования данных LRU, LFU.
Введение 3
1.Анализ предметной области 4
1.Структура кэш-памяти и схема ее работы 4
2.Алгоритмы кэширования 5
3.Ассоциативность и принципы локальности кэш-памяти 6
4.Словарь предметной области 7
2.Проектирование архитектуры разрабатываемой системы 8
1.Иерархия классов 8
2.Блок – схемы алгоритмов 8
3.Реализация системы на языке высокого уровня 10
4.Тестирование приложения 11
5.Исследование эффективности алгоритмов 13
Заключение 17
Список использованной литературы 18
Приложение 19
jLabel1.setText("Процессор");
jLabel2.setText("Количество
jLabel8.setText("Обращения процессора");
jPanel6.setBorder(javax.swing.
jCheckBox1.setText("Принцип локальности");
jCheckBox1.setEnabled(false);
jCheckBox1.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.
jCheckBox1ItemStateChanged(
}
});
jSlider2.setSnapToTicks(true);
jSlider2.setToolTipText("%");
jSlider2.setValue(0);
jSlider2.setAutoscrolls(true);
jSlider2.setCursor(new java.awt.Cursor(java.awt.
jSlider2.setEnabled(false);
jSlider2.setName("%"); // NOI18N
jSlider2.addChangeListener(new javax.swing.event.
public void stateChanged(javax.swing.
jSlider2StateChanged(evt);
}
});
jTextArea1.setBackground(new java.awt.Color(240, 240, 240));
jTextArea1.setColumns(20);
jTextArea1.setEditable(false);
jTextArea1.setFont(new java.awt.Font("Times New Roman", 0, 12)); // NOI18N
jTextArea1.setLineWrap(true);
jTextArea1.setRows(5);
jTextArea1.setText("Данный принцип позволяет выбрать ту часть(в процентах) оперативной памяти, к которой будет обращаться процессор.");
jTextArea1.setWrapStyleWord(
jTextArea1.setEnabled(false);
jScrollPane4.setViewportView(
jLabel16.setText(" 0");
jLabel17.setText("50");
jLabel18.setText("100");
jTextField9.setEditable(false)
jTextField9.setText("0%");
jTextField9.setEnabled(false);
javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(
jPanel6.setLayout(
jPanel6Layout.
jPanel6Layout.
.addGroup(jPanel6Layout.
.addContainerGap()
.addGroup(jPanel6Layout.
.addGroup(jPanel6Layout.
.addComponent(jScrollPane4, javax.swing.GroupLayout.
.addContainerGap())
.addGroup(jPanel6Layout.
.addGroup(jPanel6Layout.
.addGroup(jPanel6Layout.
.addComponent(jSlider2, javax.swing.GroupLayout.
.addGroup(jPanel6Layout.
.addContainerGap(18, Short.MAX_VALUE))))
);
jPanel6Layout.
jPanel6Layout.
.addGroup(jPanel6Layout.
.addContainerGap()
.addGroup(jPanel6Layout.
.addComponent(jCheckBox1)
.addComponent(jTextField9, javax.swing.GroupLayout.
.addPreferredGap(javax.swing.
.addComponent(jSlider2, javax.swing.GroupLayout.
.addPreferredGap(javax.swing.
.addGroup(jPanel6Layout.
.addComponent(jLabel16)
.addComponent(jLabel18)
.addComponent(jLabel17))
.addPreferredGap(javax.swing.
.addComponent(jScrollPane4, javax.swing.GroupLayout.
.addContainerGap(javax.swing.
);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(
jPanel1.setLayout(
jPanel1Layout.
jPanel1Layout.
.addGroup(jPanel1Layout.
.addContainerGap()
.addGroup(jPanel1Layout.
.addComponent(jScrollPane1, javax.swing.GroupLayout.
.addComponent(jLabel1)
.addComponent(RefCPU, javax.swing.GroupLayout.
.addComponent(jLabel8)
.addComponent(jLabel2))
.addGroup(jPanel1Layout.
.addGroup(jPanel1Layout.
.addGap(98, 98, 98)
.addComponent(jButton1)
.addGap(18, 18, 18))
.addGroup(jPanel1Layout.
.addPreferredGap(javax.swing.
.addComponent(jPanel6, javax.swing.GroupLayout.
.addContainerGap())))
);
jPanel1Layout.
jPanel1Layout.
.addGroup(jPanel1Layout.
.addGroup(jPanel1Layout.
.addGroup(jPanel1Layout.
.addGap(11, 11, 11)
.addComponent(jLabel1)
.addGap(18, 18, 18)
.addComponent(jLabel2)
.addPreferredGap(javax.swing.
.addComponent(RefCPU, javax.swing.GroupLayout.
.addGap(11, 11, 11)
.addComponent(jLabel8)
.addPreferredGap(javax.swing.
.addComponent(jScrollPane1, javax.swing.GroupLayout.
.addGroup(jPanel1Layout.
.addGap(24, 24, 24)
.addComponent(jPanel6, javax.swing.GroupLayout.
.addPreferredGap(javax.swing.
.addComponent(jButton1)))
.addContainerGap())
);
getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.
jPanel5.setBorder(javax.swing.
Statistics.setColumns(20);
Statistics.setEditable(false);
Statistics.setRows(5);
jScrollPane3.setViewportView(
jLabel9.setText("Подождите..."
javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(
jPanel5.setLayout(
jPanel5Layout.
jPanel5Layout.
.addGroup(jPanel5Layout.
.addContainerGap()
.addGroup(jPanel5Layout.
.addComponent(jScrollPane3, javax.swing.GroupLayout.
.addComponent(jLabel9)
.addComponent(jProgressBar1, javax.swing.GroupLayout.
.addContainerGap())
);
jPanel5Layout.
jPanel5Layout.
.addGroup(javax.swing.
.addContainerGap(javax.swing.
.addComponent(jScrollPane3, javax.swing.GroupLayout.
.addPreferredGap(javax.swing.
.addComponent(jLabel9)
.addPreferredGap(javax.swing.
.addComponent(jProgressBar1, javax.swing.GroupLayout.
Информация о работе Алгоритмы кэширования данных и их эффективность