49304 (Управление оперативной памятью), страница 4
Описание файла
Документ из архива "Управление оперативной памятью", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "49304"
Текст 4 страницы из документа "49304"
Что делать, когда требуется получить новую область памяти. Есть целых 3 способа.
-
get_free_page()
-
kmalloc - Простенькая (по возможностям) процедура с большими ограничениями по выделению новых областей и по их размеру.
-
vmalloc - Мощная процедура, работающая с виртуальной памятью, может выделять большие объемы памяти.
С каждой из двух процедур в ядре связаны еще по списку свободных/занятых областей, что еще больше усложняет понимание работы с памятью. (vmlist для vmalloc, kmem_cash для kmalloc)
Добавлена поддержка новой архитектуры памяти NUMA. В противовес классической UMA память делится на зоны с разным временем доступа к каждой из них. Это очень полезно и для кластерных решений. В связи с этим появились новые обертки на функции, новые структуры и найти суть стало еще сложнее. Появилась также поддержка памяти до 64Гб.
Ранее для всех файловых систем был один generic_file_read и generic_file_mmap в связи с тотальным засасыванием всего подряд в память при чтении (различия делались уже только на уровне inode->readpage).
Вывод.
В процессе выполнения курсовой работы, было выполнено изучение параметров, характеристик оперативной памяти. Также были изучены виды, типы, структуры и алгоритмы управления оперативной памятью. Далее был предоставлен пример работы операционной системы Linux с оперативной памятью.
Список используемой литературы
1. Рихтер Джеффри "Linux для профессионалов", С-П. Русская редакция 1998.
2. Хендерсон К. "Руководство разработчика баз данных"
3. Г. Майерс "Надежность ПО" Мир, М., 1980