BufWriter<Master<'_>> – Telegram
BufWriter<Master<'_>>
105 subscribers
451 photos
28 videos
34 files
1.7K links
https://www.patreon.com/alxe_master

Видео/статьи. Конспект и мои вольные комментарии по инженерии. тут только то, что считаю полезным для себя или других =)

#os, #cloud, #rust, #golang, #python, #javaScript, #cpp, etc
Download Telegram
== Аналогово-цифровое преобразование сигналов.PCM. АЦП.Дельта-модуляция. Теорема Котельникова
https://youtu.be/g1uwIt6WDTM
телега конечно огонь) сменишь номер - проси всех что бы добавили тебя в контакты
чтото с этой обстановкой совсем учиться не хочется... ни один канал и ни один ресурс как то в голову не хочется впихуивать. прям совсем не идет учеба... зато компульсивное пожирание новстей это прям на... легко
Forwarded from Кавычка (Bo0oM)
Управляющий символ 7F (или в url браузера - %7f) предназначен для забивания ошибочно пробитых символов на семидорожечных перфолентах (поскольку обозначается пробитием дырочек во всех дорожках).

А стандартная ширина терминала составляет 80 символов, потому что именно столько влезало на перфокарту.

А CR LF (\r \n) сейчас бы сделали одним символом, но при печати листингов на терминале необходимо подать бумагу на 1 строку вперед и передвинуть каретку в левый край.

Символ \a - пикнуть спикером (BELL).
И это не шутка!
== Comparing gRPC performance across different technologies
https://www.nexthink.com/blog/comparing-grpc-performance/
== Миллион одновременных соединений
https://habr.com/ru/post/661169/


- Фреймворку Phoenix удалось достичь 2 000 000 подключений.
- WhatsApp удалось достичь 2 000 000 подключений.
- Теоретический предел примерно равен 1 квадриллиону (1 000 000 000 000 000).
- У вас закончатся исходные порты (всего 216).
- Это можно исправить, добавив клиентские IP-адреса замыкания на себя.
- У вас закончатся дескрипторы файлов.
- Это можно исправить, изменив ограничения на дескрипторы файлов операционной системы.
- Java тоже ограничит количество дескрипторов файлов.
- Это можно исправить, добавив аргумент JVM -XX:MaxFDLimit.
- На моём Mac с 16 ГБ практический предел составил 80 000 подключений.
- На моём Linux-десктопе с 8 ГБ практический предел составил 840 000 подключений.
Эйчары добавляются в инсту... это что-то новенькое
мелочь а приятно
👍6
digital-design-and-computer-architecture-russian-translation.pdf
36.5 MB
оч много накопилось на просмотреть/почитать
решил освежить немного.
на фоне как подкаст звучит.

== Архитектура ЭВМ. Лекция 1: Типы архитектур. Комбинационная и последовательная логика.
https://youtu.be/R-twnbnaueE
- типы архитектур, фоннеймона, гарвардская, RISC, CISC
- мультиплексор
- дешифратор
- простейшая ячейка памяти
- RS защелка (RS-latch)
- D-зашелка (D-latch)
- D-trigger (D-flip-flop)
- сдвиговый регистр
- параллельный регистр

правила дизайна последовательных схем
- каждый элемент - либо регистр либо комбинационная схема
- хотя бы один элемент - регистр
- все регистры получает один и тот же CLK сигнал
- Каждый обратный путь содержит хотя бы один регистр
== Архитектура ЭВМ. Лекция 2: АЛУ. Устройство памяти
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

Компиляция-загрузка-запуск
- компиляция
- ассемблер
- машинный код
- упаковка в один файл
- загрузка=размещение в памяти
- запуск первой команды
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-аргумента
- загрузка значений в регистр
- вычисление адреса значения в памяти
- копирование значения из памяти в регистр
- переход на следующую инстркукцию
BufWriter<Master<'_>>
== Архитектура ЭВМ. Лекция 4: Однотактный процессор: тракт данных, ветвление https://youtu.be/O9eAp45LzQ8 Однотактный тракт данных (Data-path) - регистр адреса текущей инструкции - текущая инструкция - файл регистра - данные памяти проектирование команды…
== Архитектура ЭВМ. Лекция 5: Устройство управления процессора, многотактный процессор
https://youtu.be/30RCgo5Q7zo

lw и sw команды затрагивают весь тракт !

проблемы однотактного процессора
- две памяти
- много АЛУ
- длинный тактовый цикл
- разделенная память команд и данных

решение - многотактовый процессор
- мы считали команду и зафиксировали её в регистре
- а на выходе зарегестрировали результат
- на вход ставим мультиплексор с флажком

появились состояния управляющего устройства. FSM!!!

Это больше не комбинационная схема !!!