== Архитектура ЭВМ. Лекция 2: АЛУ. Устройство памяти
https://youtu.be/HPGw4qFARTg
- сумматор
- полусумматор (перенос в старший)
- полный сумматор (перенос и в старший и из младшего)
- сумматор с быстрым переносом (отдельно обрабатывается перенос от сигналов)
- дополнительный код
что бы отрицание сделать нужно сделать инверсию одного сигнала и добавить один
- компоратор равенства
- блок компораторов
Eq = xor
not eq = xor | not
- ALU умеет делать все. мультиплексор выбирает линию по которой будет идти вычисления (выбор операции). и мультиплексор выбирает линии которые будут выбраны как выходные сигналы
- Счетчик
- память (mem array). емкость памяти = разрядность шины адреса.
- Адресация памяти
- Многоканальная память
- DRAM / SRAM
flip-flop = 20 transistors/cell = SUPER FAST = for CACHE
SRAM = 6 transistors/cell = medium speed =
DRAM = 1 transistors/cell = slow speed
== Архитектура ЭВМ. Лекция 3: Кодирование и тип инструкций процессора.
https://youtu.be/RJFGyfT3-YY
создание RISC компьютера
порядок проектирование процессора
- Проектирование тракта данных (data-path)
- - - определение архитектурного состояния
- - - определение системы команд
- проектирование устройства управления (control-path/control-unit)
- - - разработка автомата управления
Архитектура это набор регистров и их типов
Состав регистров
- просто пронумеруем регисты последовательно = 32 регистра.
именно 32 регистра потому что память регистра это микросхема, а количство проводов целое = степень двойки.
разрядность регистров не связана с адресацией
бывает
- регистры не равноправные
- регистры равноправные
- регистры бьются на группы
- ...
Имена регистров ax, bx, ... определяет разработчик архитектуры, согласно стандарту типов процессоров. В компиляторе мнемоника ассемблера превращается в определенные байты
Ассемблер
С: a = b + c
ASM: add a, b, c
Типы инструкций
- (R)egister - используются 3 регистровых операнда
- (I)mmediate - 2 регистровых операнда и 16битная константа
- (J)ump - передача управления по непосредственному смещению (26бит)
Команды R-типа
- 6bit = op
- 5bit = rs
- 5bit = rt
- 5bit = rd
- 5bit = shamt
- 6bit = funct
add $a0, $a1, $a2
= 0 - 17 - 18 - 16 - 0 - 32
= 000000 - 10001 - 10010 - 10000 - 00000 - 100000
Команды I-типа (Immediate)
= значение можем получить сразу из команды, не ходя в данные
- 6bit = op
- 5bit = rs
- 5bit = rt
- 16bit = imm
- addi $s0, $s1, 5
- addi $t0, $s3, -12
- lw $t2, 32($0)
- sw $s1, 4($t)
Команды типа J (jump)
- 6bit = op
- 26bit = addr
уловные переходы
Little-endian = MSB-LSB
Big-endian = LSB-MSB
Компиляция-загрузка-запуск
- компиляция
- ассемблер
- машинный код
- упаковка в один файл
- загрузка=размещение в памяти
- запуск первой команды
https://youtu.be/HPGw4qFARTg
- сумматор
- полусумматор (перенос в старший)
- полный сумматор (перенос и в старший и из младшего)
- сумматор с быстрым переносом (отдельно обрабатывается перенос от сигналов)
- дополнительный код
8-3 = 5операция по модулю
08 - (-3) - 5
00000011
11111100 + 1
11111101
00001000
+
11111101
_________
1 00000101
что бы отрицание сделать нужно сделать инверсию одного сигнала и добавить один
- компоратор равенства
- блок компораторов
Eq = xor
not eq = xor | not
- ALU умеет делать все. мультиплексор выбирает линию по которой будет идти вычисления (выбор операции). и мультиплексор выбирает линии которые будут выбраны как выходные сигналы
- Счетчик
- память (mem array). емкость памяти = разрядность шины адреса.
- Адресация памяти
- Многоканальная память
- DRAM / SRAM
flip-flop = 20 transistors/cell = SUPER FAST = for CACHE
SRAM = 6 transistors/cell = medium speed =
DRAM = 1 transistors/cell = slow speed
== Архитектура ЭВМ. Лекция 3: Кодирование и тип инструкций процессора.
https://youtu.be/RJFGyfT3-YY
создание RISC компьютера
порядок проектирование процессора
- Проектирование тракта данных (data-path)
- - - определение архитектурного состояния
- - - определение системы команд
- проектирование устройства управления (control-path/control-unit)
- - - разработка автомата управления
Архитектура это набор регистров и их типов
Состав регистров
- просто пронумеруем регисты последовательно = 32 регистра.
именно 32 регистра потому что память регистра это микросхема, а количство проводов целое = степень двойки.
разрядность регистров не связана с адресацией
бывает
- регистры не равноправные
- регистры равноправные
- регистры бьются на группы
- ...
Имена регистров ax, bx, ... определяет разработчик архитектуры, согласно стандарту типов процессоров. В компиляторе мнемоника ассемблера превращается в определенные байты
Ассемблер
С: a = b + c
ASM: add a, b, c
Типы инструкций
- (R)egister - используются 3 регистровых операнда
- (I)mmediate - 2 регистровых операнда и 16битная константа
- (J)ump - передача управления по непосредственному смещению (26бит)
Команды R-типа
- 6bit = op
- 5bit = rs
- 5bit = rt
- 5bit = rd
- 5bit = shamt
- 6bit = funct
add $a0, $a1, $a2
= 0 - 17 - 18 - 16 - 0 - 32
= 000000 - 10001 - 10010 - 10000 - 00000 - 100000
Команды I-типа (Immediate)
= значение можем получить сразу из команды, не ходя в данные
- 6bit = op
- 5bit = rs
- 5bit = rt
- 16bit = imm
- addi $s0, $s1, 5
- addi $t0, $s3, -12
- lw $t2, 32($0)
- sw $s1, 4($t)
Команды типа J (jump)
- 6bit = op
- 26bit = addr
уловные переходы
Little-endian = MSB-LSB
Big-endian = LSB-MSB
Компиляция-загрузка-запуск
- компиляция
- ассемблер
- машинный код
- упаковка в один файл
- загрузка=размещение в памяти
- запуск первой команды
YouTube
Архитектура ЭВМ. Лекция 2: АЛУ. Устройство памяти
В лекции постепенно объясняется устройство сумматора и его различных модификаций, таких как сумматор с быстрым переносом и сумматор с распространяющимся переносом. Это подводит к созданию арифметико-логического устройства (АЛУ), счетчиков и компараторов.…
BufWriter<Master<'_>>
== Архитектура ЭВМ. Лекция 2: АЛУ. Устройство памяти https://youtu.be/HPGw4qFARTg - сумматор - полусумматор (перенос в старший) - полный сумматор (перенос и в старший и из младшего) - сумматор с быстрым переносом (отдельно обрабатывается перенос от сигналов)…
== Архитектура ЭВМ. Лекция 4: Однотактный процессор: тракт данных, ветвление
https://youtu.be/O9eAp45LzQ8
Однотактный тракт данных (Data-path)
- регистр адреса текущей инструкции
- текущая инструкция
- файл регистра
- данные памяти
проектирование команды
lw = load word - загружает слово в регистр
op - rs - rt - imm
rs - адрес откуда (из какого регистра) взять данные
rt - адрес куда (в какой регистр) положить данные
imm - значение смещения к базовому адресу в памяти (гдето оно лежит точно)
последовательность действий LW
- чтение инструкции LW
- чтение операнда источника
- знаковое расширение I-аргумента
- загрузка значений в регистр
- вычисление адреса значения в памяти
- копирование значения из памяти в регистр
- переход на следующую инстркукцию
https://youtu.be/O9eAp45LzQ8
Однотактный тракт данных (Data-path)
- регистр адреса текущей инструкции
- текущая инструкция
- файл регистра
- данные памяти
проектирование команды
lw = load word - загружает слово в регистр
op - rs - rt - imm
rs - адрес откуда (из какого регистра) взять данные
rt - адрес куда (в какой регистр) положить данные
imm - значение смещения к базовому адресу в памяти (гдето оно лежит точно)
последовательность действий LW
- чтение инструкции LW
- чтение операнда источника
- знаковое расширение I-аргумента
- загрузка значений в регистр
- вычисление адреса значения в памяти
- копирование значения из памяти в регистр
- переход на следующую инстркукцию
BufWriter<Master<'_>>
== Архитектура ЭВМ. Лекция 4: Однотактный процессор: тракт данных, ветвление https://youtu.be/O9eAp45LzQ8 Однотактный тракт данных (Data-path) - регистр адреса текущей инструкции - текущая инструкция - файл регистра - данные памяти проектирование команды…
== Архитектура ЭВМ. Лекция 5: Устройство управления процессора, многотактный процессор
https://youtu.be/30RCgo5Q7zo
lw и sw команды затрагивают весь тракт !
проблемы однотактного процессора
- две памяти
- много АЛУ
- длинный тактовый цикл
- разделенная память команд и данных
решение - многотактовый процессор
- мы считали команду и зафиксировали её в регистре
- а на выходе зарегестрировали результат
- на вход ставим мультиплексор с флажком
появились состояния управляющего устройства. FSM!!!
Это больше не комбинационная схема !!!
https://youtu.be/30RCgo5Q7zo
lw и sw команды затрагивают весь тракт !
проблемы однотактного процессора
- две памяти
- много АЛУ
- длинный тактовый цикл
- разделенная память команд и данных
решение - многотактовый процессор
- мы считали команду и зафиксировали её в регистре
- а на выходе зарегестрировали результат
- на вход ставим мультиплексор с флажком
появились состояния управляющего устройства. FSM!!!
Это больше не комбинационная схема !!!
== Архитектура ЭВМ Лекция 6: Устройство управления многотактного процессора. Конвейерный тракт данных.
https://youtu.be/PQPLRwyW2h8
мультиплексор это свитч, который переключает стримы в зависимости от флажков
lw/sw
- фетч инстукции и флагов
- декодироввание инструкций = комбинационная схема ! всего лишь
- вычисление адреса в памяти
- в зависимости от того надо ли нам читать или писать (lw или sw) читаем инструкции или данные
- записываем адрес в нужный Рег
Конвеер = команда разбилась на несколько этапов и можно уплотнить во времени их исполнение если они друг другу не мешают
Конвейерный тракт данных
- после каждого этапа появляется массив регистров для каждой новой операции
- но нужно убрать одновременные передачи на обратном пути. поставить регистры на выходе что бы потом забирать !
- все результаты надо протягивать через конвеер !!!
- сброс конвеера дорогой
- задача предсказать ветки, что бы меньше перезагружать конвеер (бранч предикшн нужен)
https://youtu.be/PQPLRwyW2h8
мультиплексор это свитч, который переключает стримы в зависимости от флажков
lw/sw
- фетч инстукции и флагов
- декодироввание инструкций = комбинационная схема ! всего лишь
- вычисление адреса в памяти
- в зависимости от того надо ли нам читать или писать (lw или sw) читаем инструкции или данные
- записываем адрес в нужный Рег
Конвеер = команда разбилась на несколько этапов и можно уплотнить во времени их исполнение если они друг другу не мешают
Конвейерный тракт данных
- после каждого этапа появляется массив регистров для каждой новой операции
- но нужно убрать одновременные передачи на обратном пути. поставить регистры на выходе что бы потом забирать !
- все результаты надо протягивать через конвеер !!!
- сброс конвеера дорогой
- задача предсказать ветки, что бы меньше перезагружать конвеер (бранч предикшн нужен)
BufWriter<Master<'_>>
== Архитектура ЭВМ Лекция 6: Устройство управления многотактного процессора. Конвейерный тракт данных. https://youtu.be/PQPLRwyW2h8 мультиплексор это свитч, который переключает стримы в зависимости от флажков lw/sw - фетч инстукции и флагов - декодироввание…
Конфликты (hazard) в конвеере - ситуация в которой выполнение одной из команд зависит от другой (еще не завершенной команды)
Стадии команд
IM - instruction memory
RF - Regsitrer File
DM - Data memory
Типы конфликтов
- конфликт данных (зависимость или противоречие данных)
- конфликт управления (одно устройство, несколько команд)
Варианты конфликтов
- RAW - read after write (прочитали до записи)
- WAR - write after read (перезаписали до того как прочитали)
- WAW - write after write (перезаписали до того как записали в предыдущей)
Стадии команд
IM - instruction memory
RF - Regsitrer File
DM - Data memory
Типы конфликтов
- конфликт данных (зависимость или противоречие данных)
- конфликт управления (одно устройство, несколько команд)
Варианты конфликтов
- RAW - read after write (прочитали до записи)
- WAR - write after read (перезаписали до того как прочитали)
- WAW - write after write (перезаписали до того как записали в предыдущей)
BufWriter<Master<'_>>
Конфликты (hazard) в конвеере - ситуация в которой выполнение одной из команд зависит от другой (еще не завершенной команды) Стадии команд IM - instruction memory RF - Regsitrer File DM - Data memory Типы конфликтов - конфликт данных (зависимость или противоречие…
== Архитектура ЭВМ Лекция 7: Конфликты конвейера. Улучшения микроархитектуры
https://youtu.be/ZJhG0Q8Hgjg
решение
- bypass (forwarding)
- bubbling (fragmentation) = всьавка NOP
- re-ordering
добавляется к ControlUnit и к DataPath новый HazardUnit - устройство передачи данных между командами, разрешение конфликтов. способен определить как переключить данные
вставляется компоратор на вход. если все равно то берется результат из регистра
проблема - мы не можем смотреть в будущее. поэтому ставим пробелы в исполнение. "слипы на уровне команды"
Конфликт управления для бранчей (beq)
branch-prediction
предсказание условных переходов
- статическое предсказание (переходы назад имеют высокую вероятность) = likely/unlikely
- динамическое предсказание (вперед)
- - буфер целевых адресов (адрес, состояние)
- - автомат = для каждого перехода я могу построить предсказание, наивный сегодня=вчера работает хорошо
Типы параллелизма
- временной (конвееризация)
- - разбиение задачи на стадии
- - задача последовательно происходит все стадии
- пространственный
- - дублирование исполнительных узлов для параллельного исполнения разных задач
процессоры
- Скаларный 0 одна в стадии EXE
- векторный - одна инструкция в стадии EXE но несколько независимых трактов данных
- Суперскалярный - в стадии EXE несколько независимых инструкций одновременно
Параллельные архитектуры
- MISD (multiple instruction single data)
- SIMD (single instruction multiple data)
- SISD (single instruction single data)
- MIMD (multiple instruction multiple data)
Гетерогаенная архитектура
- комбинирование разных архитектур в одной вычислительной системе
- FPGA
- DSP
- RT Core
== Архитектура ЭВМ Лекция 8: Assembly Language "Hello World". Основы отладки в GDB
https://youtu.be/aHYaseRUHLM
https://youtu.be/ZJhG0Q8Hgjg
решение
- bypass (forwarding)
- bubbling (fragmentation) = всьавка NOP
- re-ordering
добавляется к ControlUnit и к DataPath новый HazardUnit - устройство передачи данных между командами, разрешение конфликтов. способен определить как переключить данные
вставляется компоратор на вход. если все равно то берется результат из регистра
проблема - мы не можем смотреть в будущее. поэтому ставим пробелы в исполнение. "слипы на уровне команды"
Конфликт управления для бранчей (beq)
branch-prediction
предсказание условных переходов
- статическое предсказание (переходы назад имеют высокую вероятность) = likely/unlikely
- динамическое предсказание (вперед)
- - буфер целевых адресов (адрес, состояние)
- - автомат = для каждого перехода я могу построить предсказание, наивный сегодня=вчера работает хорошо
Типы параллелизма
- временной (конвееризация)
- - разбиение задачи на стадии
- - задача последовательно происходит все стадии
- пространственный
- - дублирование исполнительных узлов для параллельного исполнения разных задач
процессоры
- Скаларный 0 одна в стадии EXE
- векторный - одна инструкция в стадии EXE но несколько независимых трактов данных
- Суперскалярный - в стадии EXE несколько независимых инструкций одновременно
Параллельные архитектуры
- MISD (multiple instruction single data)
- SIMD (single instruction multiple data)
- SISD (single instruction single data)
- MIMD (multiple instruction multiple data)
Гетерогаенная архитектура
- комбинирование разных архитектур в одной вычислительной системе
- FPGA
- DSP
- RT Core
== Архитектура ЭВМ Лекция 8: Assembly Language "Hello World". Основы отладки в GDB
https://youtu.be/aHYaseRUHLM
YouTube
Архитектура ЭВМ Лекция 7: Конфликты конвейера. Улучшения микроархитектуры
Лекция посвящена изучению проблем и конфликтов, которые могут возникать в конвейере и способов их решения, таких как переименование регистров, внеочередное выполнение команд и других. Также рассматриваются различные оптимизации, включая раннее прогнозирование…
== Архитектура ЭВМ Лекция 9: Иерархия хранения данных. Организация кэш памяти.
https://youtu.be/WLj1R2YlueY
UMA - uniform memory access (нет разницы где эта память, доступ детерминирован)
NUMA - non-uniform memory access (интерфейс или время к памяти по разным адресам не одинаково!)
Локальность данных
- временная (скорее всего скоро обратится еще раз к этим же данным)
- пространственная (скорее всего обратится к соседней памяти)
Иерархия хранения данных (иерархия памяти)
Организация процессорного КЭШа
Кэш линия - наборы смежных слов данных котопые помещаются в кэш (вытесняются из кэш) совместно. Рядом они должны быть для того что бы линейно брать соседей
ТИпы отображения памяти в кэш
- прямое отображение
- наборно-ассоциативный
- полностью ассоциативный
Состояние данных в кэш
- cache miss - данные остутствуют в кэш
- cache hit - данные в кэш
Запись в КЭШ
- write-through (пишем сразу через кэш в память)
- write-back (вначале в кэш, а потом он сам синхронизируется когда нибудь с памятью) - быстро, но неконсистентность возможна
== Архитектура ЭВМ Лекция 10: Устройство жесткого диска. Виртуальная память.
https://youtu.be/yxXQeHOIYCE
виртуальная память потому что она может быть разделена по средам, устройствам, сетям и тп... а абстракция одна и та же
LBA - Logical Block Addressing
- getN()
- write(N_block, data)
- read(N_block)
Элементом виртуальной памяти это страница.
- размер страницы = длина строки для кэша
- страницчная ошибка = промах для кэша
- смещение относительно страницы = смещение относительно строки для кэша
- номер виртуальной страницы = тэг для кэша
https://youtu.be/WLj1R2YlueY
UMA - uniform memory access (нет разницы где эта память, доступ детерминирован)
NUMA - non-uniform memory access (интерфейс или время к памяти по разным адресам не одинаково!)
Локальность данных
- временная (скорее всего скоро обратится еще раз к этим же данным)
- пространственная (скорее всего обратится к соседней памяти)
Иерархия хранения данных (иерархия памяти)
Организация процессорного КЭШа
Кэш линия - наборы смежных слов данных котопые помещаются в кэш (вытесняются из кэш) совместно. Рядом они должны быть для того что бы линейно брать соседей
ТИпы отображения памяти в кэш
- прямое отображение
- наборно-ассоциативный
- полностью ассоциативный
Состояние данных в кэш
- cache miss - данные остутствуют в кэш
- cache hit - данные в кэш
Запись в КЭШ
- write-through (пишем сразу через кэш в память)
- write-back (вначале в кэш, а потом он сам синхронизируется когда нибудь с памятью) - быстро, но неконсистентность возможна
== Архитектура ЭВМ Лекция 10: Устройство жесткого диска. Виртуальная память.
https://youtu.be/yxXQeHOIYCE
виртуальная память потому что она может быть разделена по средам, устройствам, сетям и тп... а абстракция одна и та же
LBA - Logical Block Addressing
- getN()
- write(N_block, data)
- read(N_block)
Элементом виртуальной памяти это страница.
- размер страницы = длина строки для кэша
- страницчная ошибка = промах для кэша
- смещение относительно страницы = смещение относительно строки для кэша
- номер виртуальной страницы = тэг для кэша
YouTube
Архитектура ЭВМ Лекция 9: Иерархия хранения данных. Организация кэш памяти.
В лекции рассматривается иерархия хранения данных от регистров процессора до жесткого диска компьютера. Особое внимание уделяется типам кэш-памяти, их устройству и промахам при работе с ними. Особенно детально дается описание кэша прямого отображения, наборно…
== Архитектура ЭВМ Лекция 9: Иерархия хранения данных. Организация кэш памяти.
https://youtu.be/WLj1R2YlueY
UMA - uniform memory access (нет разницы где эта память, доступ детерминирован)
NUMA - non-uniform memory access (интерфейс или время к памяти по разным адресам не одинаково!)
Локальность данных
- временная (скорее всего скоро обратится еще раз к этим же данным)
- пространственная (скорее всего обратится к соседней памяти)
Иерархия хранения данных (иерархия памяти)
Организация процессорного КЭШа
Кэш линия - наборы смежных слов данных котопые помещаются в кэш (вытесняются из кэш) совместно. Рядом они должны быть для того что бы линейно брать соседей
ТИпы отображения памяти в кэш
- прямое отображение
- наборно-ассоциативный
- полностью ассоциативный
Состояние данных в кэш
- cache miss - данные остутствуют в кэш
- cache hit - данные в кэш
Запись в КЭШ
- write-through (пишем сразу через кэш в память)
- write-back (вначале в кэш, а потом он сам синхронизируется когда нибудь с памятью) - быстро, но неконсистентность возможна
https://youtu.be/WLj1R2YlueY
UMA - uniform memory access (нет разницы где эта память, доступ детерминирован)
NUMA - non-uniform memory access (интерфейс или время к памяти по разным адресам не одинаково!)
Локальность данных
- временная (скорее всего скоро обратится еще раз к этим же данным)
- пространственная (скорее всего обратится к соседней памяти)
Иерархия хранения данных (иерархия памяти)
Организация процессорного КЭШа
Кэш линия - наборы смежных слов данных котопые помещаются в кэш (вытесняются из кэш) совместно. Рядом они должны быть для того что бы линейно брать соседей
ТИпы отображения памяти в кэш
- прямое отображение
- наборно-ассоциативный
- полностью ассоциативный
Состояние данных в кэш
- cache miss - данные остутствуют в кэш
- cache hit - данные в кэш
Запись в КЭШ
- write-through (пишем сразу через кэш в память)
- write-back (вначале в кэш, а потом он сам синхронизируется когда нибудь с памятью) - быстро, но неконсистентность возможна
YouTube
Архитектура ЭВМ Лекция 9: Иерархия хранения данных. Организация кэш памяти.
В лекции рассматривается иерархия хранения данных от регистров процессора до жесткого диска компьютера. Особое внимание уделяется типам кэш-памяти, их устройству и промахам при работе с ними. Особенно детально дается описание кэша прямого отображения, наборно…
BufWriter<Master<'_>>
== Архитектура ЭВМ Лекция 9: Иерархия хранения данных. Организация кэш памяти. https://youtu.be/WLj1R2YlueY UMA - uniform memory access (нет разницы где эта память, доступ детерминирован) NUMA - non-uniform memory access (интерфейс или время к памяти по разным…
== Архитектура ЭВМ Лекция 10: Устройство жесткого диска. Виртуальная память.
https://youtu.be/yxXQeHOIYCE
виртуальная память потому что она может быть разделена по средам, устройствам, сетям и тп... а абстракция одна и та же
LBA - Logical Block Addressing
- getN()
- write(N_block, data)
- read(N_block)
Элементом виртуальной памяти это страница.
- размер страницы = длина строки для кэша
- страницчная ошибка = промах для кэша
- смещение относительно страницы = смещение относительно строки для кэша
- номер виртуальной страницы = тэг для кэша
Трансляция адреса
- Логическое Адресное пространство (АП)
- Физическое АП
SWAP раздел это НЕ хаотичный файл а МАССИВ последовательных нефрагментированных данных, так же как в RAM
Буфер ассоциативной трансляции
- Translation lokaside buffer (TLB) - полностью ассоциативный кэш, который хранит отображение. МГНОВЕННО, потому что АППАРАТНЫЙ
LMK - low memory killer
OOMK - Out Of Memory Killer
https://youtu.be/yxXQeHOIYCE
виртуальная память потому что она может быть разделена по средам, устройствам, сетям и тп... а абстракция одна и та же
LBA - Logical Block Addressing
- getN()
- write(N_block, data)
- read(N_block)
Элементом виртуальной памяти это страница.
- размер страницы = длина строки для кэша
- страницчная ошибка = промах для кэша
- смещение относительно страницы = смещение относительно строки для кэша
- номер виртуальной страницы = тэг для кэша
Трансляция адреса
- Логическое Адресное пространство (АП)
- Физическое АП
SWAP раздел это НЕ хаотичный файл а МАССИВ последовательных нефрагментированных данных, так же как в RAM
Буфер ассоциативной трансляции
- Translation lokaside buffer (TLB) - полностью ассоциативный кэш, который хранит отображение. МГНОВЕННО, потому что АППАРАТНЫЙ
LMK - low memory killer
OOMK - Out Of Memory Killer
BufWriter<Master<'_>>
== Архитектура ЭВМ Лекция 10: Устройство жесткого диска. Виртуальная память. https://youtu.be/yxXQeHOIYCE виртуальная память потому что она может быть разделена по средам, устройствам, сетям и тп... а абстракция одна и та же LBA - Logical Block Addressing…
== Архитектура ЭВМ Лекция 11: Организация ввода вывода. Интерфейсы передачи данных.
https://youtu.be/icuwUnu5ZIU
STI - set interrupt flag
CLI - clear interrupt flag
INT_R - interruption request (device)
INT_A - interruption ack (cpu)
Memory Mapped IO (MMIO)
General Purpose IO (GPIO)
UART, PWM, SPI, I2C, DAC/ADC
MESI протокол когерентности КЭШа
- Modified
- Exclusive
- Shared
- Invalid
https://youtu.be/icuwUnu5ZIU
STI - set interrupt flag
CLI - clear interrupt flag
INT_R - interruption request (device)
INT_A - interruption ack (cpu)
Memory Mapped IO (MMIO)
General Purpose IO (GPIO)
UART, PWM, SPI, I2C, DAC/ADC
MESI протокол когерентности КЭШа
- Modified
- Exclusive
- Shared
- Invalid
базовая лекция для обьяснения как работает компьютерная сеть. вполне доступно и не для программистов
== Основы функционирования компьютерных сетей
https://youtu.be/BJSITWkSDQg
- модель TCP/IP
- построение сети
- маршрутизация и ARP/RARP пакеты и кэш маршрутов
- юникаст, мультикаст общение
- DHCP (это больше чем просто выдача адреса твоей ноды. это впринципе выдача знаний о адресах разного нужного типа). так же есть тут кэш ДНС запросов
- DNS
- VLAN, VXLAN
- SDN - software define networks. меняется в одном месте, он обновляется везде
- OpenFlow это протокол общения между контроллерами SDN
устройства
- hub (повторитель, возможны коллизии)
- switch (создает линковку устройств, "как телефонистка в будке")
- router L1, L2, L3...
OpenVSwitch - программа виртуального свича на одном компьютере
- шлюз в интернет это IP адрес подключенный к сети. настройка либо статическая либо по DHCP
-
== Основы функционирования компьютерных сетей
https://youtu.be/BJSITWkSDQg
- модель TCP/IP
- построение сети
- маршрутизация и ARP/RARP пакеты и кэш маршрутов
- юникаст, мультикаст общение
- DHCP (это больше чем просто выдача адреса твоей ноды. это впринципе выдача знаний о адресах разного нужного типа). так же есть тут кэш ДНС запросов
- DNS
- VLAN, VXLAN
- SDN - software define networks. меняется в одном месте, он обновляется везде
- OpenFlow это протокол общения между контроллерами SDN
устройства
- hub (повторитель, возможны коллизии)
- switch (создает линковку устройств, "как телефонистка в будке")
- router L1, L2, L3...
OpenVSwitch - программа виртуального свича на одном компьютере
- шлюз в интернет это IP адрес подключенный к сети. настройка либо статическая либо по DHCP
-
YouTube
Основы функционирования компьютерных сетей
Лекция ориентирована, в основном, на тех, кто хотел бы получить цельную картину относительно современных сетевых технологий. На ней неформально определены такие базовые понятия как адресация, маршрутизация, затронуты вопросы организации беспроводных сетей…
https://youtu.be/hNd4mse2C4s
Очень хорошо. После осциллографа вообще все стало на свои места
Очень хорошо. После осциллографа вообще все стало на свои места
YouTube
Как всё-таки работает электричество? [Veritasium]
Если вы в России https://boosty.to/vertdider
Если вы не в России https://www.patreon.com/VertDider
Помните, какую бурную реакцию вызвал ролик про электричество? Дерек ответил на шквал критики и замечаний в новом видео!
Первая часть видео: https://youtu.be/6Hv2GLtnf2c…
Если вы не в России https://www.patreon.com/VertDider
Помните, какую бурную реакцию вызвал ролик про электричество? Дерек ответил на шквал критики и замечаний в новом видео!
Первая часть видео: https://youtu.be/6Hv2GLtnf2c…
нашел себе еще один канал на ютюбчике. маст листн для мня. как подкаст замечательно идет
== Архитектуры процессорных систем
https://www.youtube.com/c/%D0%90%D0%9F%D0%A1%D0%9F%D0%BE%D0%BF%D0%BE%D0%B2/videos
== Архитектуры процессорных систем
https://www.youtube.com/c/%D0%90%D0%9F%D0%A1%D0%9F%D0%BE%D0%BF%D0%BE%D0%B2/videos
BufWriter<Master<'_>>
нашел себе еще один канал на ютюбчике. маст листн для мня. как подкаст замечательно идет == Архитектуры процессорных систем https://www.youtube.com/c/%D0%90%D0%9F%D0%A1%D0%9F%D0%BE%D0%BF%D0%BE%D0%B2/videos
== АПС Л1. Вводная
https://youtu.be/Xtc7NkQUGpE
принципы фоннеймана
- двоичное кодирование
- адресуемость памяти
- последовательное программное управление (инструкция за инструкцией)
- однородность памяти
на уровне ядра процессора архитектура реализована чаще всего как гарвардская архитектура
https://youtu.be/Xtc7NkQUGpE
принципы фоннеймана
- двоичное кодирование
- адресуемость памяти
- последовательное программное управление (инструкция за инструкцией)
- однородность памяти
на уровне ядра процессора архитектура реализована чаще всего как гарвардская архитектура
YouTube
АПС Л1. Вводная
Вводная лекция по курсу "Архитектуры процессорных систем"