В чем разница между поисковым вызовом и переключением контекста? [закрыто]

Вы можете загрузить соответствующую версию из снимков и установить ее вручную вместе с любыми зависимостями. (Также можно настроить репозиторий apt для соответствующего снимка, но, вероятно, это не стоит делать здесь.)

Учитывая, что вы используете версию 4.7.5-1 ~ bpo8 + 2, здесь это файлы, которые вам нужно загрузить и установить:

После установки всех четырех из них вам может потребоваться запустить apt-get install -f , чтобы исправить любые дальнейшие недостающие зависимости ( например, компилятор).

Обратите внимание, что вам действительно следует выполнить обновление до доступного в настоящее время ядра из резервных копий. Для этого вместе с заголовками, чтобы вы всегда были в курсе по мере появления новых ядер, установите linux-image-amd64 и linux-headers-amd64 из бэкпортов:

apt-get install -t jessie-backports linux-{image,headers}-amd64

1
02.06.2018, 00:50
2 ответа

Creo que hay más diferencias que puntos en común.

El cambio de contexto básicamente se refiere a cualquier contexto de CPU que el código del programa necesite ejecutar. Eso incluye cosas como los valores de los registros de la CPU, las banderas, el puntero de instrucción y el puntero de pila, el nivel de prioridad, la configuración de la memoria virtual (, las tablas de páginas ), etc.

No es necesario que incluya la memoria real del proceso y, por lo general, no lo hace, ya que cambiar la memoria de un proceso por completo sería lento. Siempre que el sistema pueda almacenar varios programas en la memoria al mismo tiempo, y que los programas tengan una forma de saber qué parte de la memoria es suya para usar, no hay necesidad de intercambiar toda la memoria de un proceso al cambiar a otro..

(Sin embargo, según Wikipedia, solían intercambiar procesos completos en la década de 1960.)

La paginación es el proceso de mover bloques ("páginas" )de memoria entre la memoria principal y algún almacenamiento secundario, generalmente de una manera que es invisible para el proceso en ejecución.

En un sistema moderno -ish,el cambio de contexto entre procesos incluirá la recarga de tablas de páginas, pero no necesita involucrar paginación en absoluto, ya que generalmente todo cabe en la memoria. Por otro lado, la paginación puede ocurrir incluso dentro de un solo proceso, si uno usa suficiente memoria para requerir intercambio.

Entonces, en realidad, el cambio de contexto y la paginación son bastante ortogonales, son solo conceptos de SO de memoria virtual multitarea.

3
27.01.2020, 23:18

Переключение контекста не связано с пейджингом, оно позволяет запускать две разные программы одновременно. Контекст — это то, какой код пространства пользователя -или пространства ядра -выполняется, и переключение происходит из пространства пользователя -в пространство ядра -или наоборот -.

Пейджинг происходит только тогда, когда у вас есть пространство подкачки для размещения страниц памяти, которые вы хотите выгрузить в это пространство, чтобы использовать страницу памяти для чего-то другого. Если места подкачки нет, то пейджинга нет, но переключение контекста будет.

Когда контекст переключается из пространства пользователя -в код пространства -ядра (, а затем, возможно, в код пространства другого пользователя -другого приложения ), пейджинг не обязательно выполняется. Т.е. исходная память процессов не выгружается автоматически. Таким образом, он все еще будет использовать память, пока работает второй процесс.

1
27.01.2020, 23:18

Теги

Похожие вопросы