IT словарь (dictionary)

https://www.rfc-editor.org/materials/abbrev.expansion.txt

RU

Асимптотическая оценка – оценка сложности (скорости/эффективности) алгоритма с увеличением объема обрабатываемых данных, подробнее в отдельной статье

АКС – аудио-конференц-связь,

ACE – автоматизированная система управления

БРП – База Решающих Правил (сигнатур)

ВКС – видео-конференц-связь

ДА – Детектор/Датчик Атак (IPS/IDS)

ДСЧ – датчик случайных чисел

Коэффициент корреляции (correlation coefficient) – см. статистику

Размах (range) – см. статистику

Синтаксис – правила написания кода

Семантика – смысл написанного кода

Среднеквадратическое отклонение (СКО) – см. статистику

Программа – исполняемый компьютером код, написанный на каком-то языке.

Процент одного числа от другого – часто есть задача сколько составляет число X от числа Y. Формула расчета простейшая, но зачастую (float, большие значения int) быстрее скопипастить. Удобный калькулятор.

Формула:
(x/y) * 100

Перцентиль, процентиль (percentile) – см. статистику

Скриптом – обычно называют короткую программу, которая:

    • пишется и запускается быстро для решения конкретной задачи или малого количества задач
    • обычно пишется на интерпретируемом языке

СЗИ – Сердство Защиты Информации

СКЗИ – Средство Криптографической Защиты Информации

Синтетический сахар – необязательный функционал, но который зачастую делает код красивее/быстрее (напр. list comprehension в python).

СОВ – Система Обнаружения Вторжений

Кодифицировать (codify) – систематизировать, упорядочить

Закрытый контур – закрытый информационный контур, обеспечивающий сбор, хранение, обработку, обмен и представление информации, содержащей сведения, составляющие государственную тайну.

ОТО – объект тестового окружения (средство тестирования + необходимые элементы like свичи/промежуточные девайсы/флешки)

TO – тестовое окружение (совокупность ОТО)

ОТ (DUT) – device under test (объект тестирования)

МСЭ – межсетевой экран

ПАК – программно-аппаратный комплекс

КИИ – критическая информационная инфраструктура

Доверительный интервал – см. статистику

Среднее значение (average/mean) – см. статистику

Средневзвешанное значение (weighed average/mean) – см. статистику

Идемпоте́нтность (лат. idem «тот же самый» + potens «способный») — свойство объекта или операции при повторном применении операции к объекту давать тот же результат, что и при первом ((и не изменять состояние объекта)). Идемпотентный метод – это метод, который будет давать одни и те же результаты независимо от того, сколько раз он вызывается.

– Метод GET является idempotent, поскольку множественные вызовы ресурса GET всегда возвращают тот же ответ.

– Метод PUT является idempotent, так как вызов метода PUT несколько раз обновляет тот же ресурс и не изменяет результат.

– POST не является идемпотентным, а вызов метода POST несколько раз может имеют разные результаты и приведут к созданию новых ресурсов.

– DELETE является idempotent, потому что как только ресурс будет удален, он исчезнет и вызов метода несколько раз не изменит результат

Медиана — см. статистику

Машина Тьюринга, полнота Тьюринга – HLD современных вычислительных систем (работа алгоритма, input/output). Полным называется язык или машина, реализующая эту машину.

 

EN

3GPP – основная организация по стандартизации – GSM/3G/LTE

ASCII – старая таблица символов. В таблице символ сопоставляется какому то hex числу. Чистый ASCII еще можно встретить, но в целом он замещен Unicode, который обратно совместим с ASCII.

ASCII Table

A dying gasp – is a message (or signal) sent by the customer premises equipment (CPE) to equipment managed by an internet service provider to indicate that the CPE has lost power. Also known as last gasp.

Big Endian/Little Endian – последовательность чтения бит одного байта (слева-направо, справа-налево). В сетевых протоколах чаще всего “прямая” (big endian, от старшего к младшему, 123 = 123), для CPU чаще всего “обратная” (little-endian, от младшего к старшему, 123=321). В целом соглашение little-endian поддерживают меньше кросс-платформенных протоколов и форматов данных, чем big-endian. В lscpu можно посмотреть используемый CPU byte order.

~$ lscpu | grep Byte
Byte Order: Little Endian

CSV – Comma-Separated Values. Простой формат хранения данных, представляет из себя строки, в которых сегменты текста разделенные запятыми.

CVE – Common Vulnerabilities and Exposures

CTF – Capture The Flag. Соревнования в ИБ.

Datasheet – описывает тех. характеристики оборудования

DMI (Desktop Management Interface) — интерфейс (API), позволяющий программному обеспечению собирать данные о характеристиках компьютера. Используется в утилитах, например dmidecode.

DIY – Do it yourself – сделай сам/своей. Например, в контексте бекап решений – можно сделать решений DIY, а можно использовать существующие продукты для backup.

DUT – Device Under Test (объект тестирования)

Dependency Hell (в windows DLL Hell) – проблема с конфликтом версий библиотек. К примеру одно приложение подтягивает новую версию библиотеки и подменяет ей старую. А другие приложения не знают как с этой новой версией работать. В современных системах проблема почти не встречается – сохраняются несколько версий одной библиотеки

  • virtualenv python
  • rvm ruby
  • в Windows за ними следит SxS (Side-by-side assemblies), разделяемые библиотеки в основном хранятся в C:\Windows\WinSxS, приложение указывает в manifest необходимую ему версию

Elevator pitch — короткий рассказ о концепции продукта, проекта или сервиса (или о себе). Термин отражает ограниченность по времени — длина презентации должна быть такой, чтобы она могла быть полностью рассказана за время поездки на лифте, то есть около тридцати секунд или 100—150 слов.

Кодировки

    • Любой набор данных в оперативной памяти компьютера должен храниться в виде двоичного числа. Это относится и к строкам, которые состоят из символов (буквы, знаки препинания и т.д.). Когда символ сохраняется в памяти, он сначала преобразуется в цифровой код. И затем этот цифровой код сохраняется в памяти как двоичное число.
    • ASCII представляет собой набор из 128 цифровых кодов, которые обозначают английские буквы, различные знаки препинания и другие символы. Например, код ASCII для прописной английской буквы «А» (латинской) равняется 65. Когда на компьютерной клавиатуре вы набираете букву «А» в верхнем регистре, в памяти сохраняется число 65 (как двоичное число, разумеется). На один символ в ASCII отводится ровно 7 бит. Аббревиатура ASCll произносится «аски». Схема кодирования ASCII имеет ограничения, потому что она определяет коды только для 128 символов. Для того чтобы это исправить, в начале 1990-х годов был разработан набор символов Юникода (Unicode).
    • Unicode – применение этого стандарта позволяет закодировать очень большое число символов из разных систем письменности: в документах, закодированных по стандарту Юникод, могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, символы музыкальной нотной нотациии напр. emoji U+1F600. При этом первые 128 кодов таблицы символов Unicode совпадают с ASCII. В Юникод все время добавляются новые символы, а сам размер этой таблицы не ограничен и будет только расти, поэтому сейчас при хранении в памяти одного юникод-символа может потребоваться от 1 до 8 байт. Отсутствие ограничений привело к тому, что стали появляться символы на все случаи жизни. Стандарт состоит из двух основных частей:
      • универсального набора символов – перечисляет допустимые по стандарту Юникод символы и присваивает каждому символу код в виде неотрицательного целого числа. Юникод — это не кодировка. Это именно таблица символов. То, как символы с соответствующими кодами будут храниться в памяти компьютера, зависит от конкретной кодировки, базирующейся на Юникоде,  например UTF-8.
      • семейства кодировок (Unicode transformation format, UTF) – определяет способы преобразования кодов символов для хранения на компьютере и передачи.
    • UTF-8 – де-факто стандарт кодирования Unicode символов в байты. Текст использующий только ASCII символы при кодировании UTF-8 может быть прочитан ASCII (причина описана выше в Unicode). Использует переменное количество байт для кодирования символов, в отличии от UTF-16/32. В этом и преимущество (меньшие накладные расходы по памяти) и недостаток (для особых сценариев необходимо линейное сопоставление). Схема распознавания, что символ закодирован не одним байтом (октетом), напоминает классовую адресацию.
Если для кодирования требуется больше одного октета, то в октетах 2-4 два старших бита всегда устанавливаются равными 102 (10xxxxxx). Это позволяет легко отличать первый октет в потоке, потому что его старшие биты никогда не равны 102.
Количество октетов Значащих бит Шаблон
1 7 0xxxxxxx
2 11 110xxxxx 10xxxxxx
3 16 1110xxxx 10xxxxxx 10xxxxxx
4 21 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

ECC (Error correction code) – память с коррекцией ошибок. Чаще всего встречается только в серверах. Стоит дороже.

DAC – Direct Attached Cable – очень удобный кабель для стойки. Недостаток – небольшие расстояния, надо проверять совместимость (справедливо и для просто модулей)

HR – Human Resources – кадры

TY – thanks you

SOHO – Small office home office

SMB/SME – Small and medium-sized business/enterprise

WIP – Work in process (напр. функционал в процессе реализации в посл. версиях)

HA – High Availability

FT – Fault Tolerance

WI – Web Interface

FW – Firewall

LB – Load Balancer

AG – Access Gateway

DPM – Dynamic Power Manager

DRS – Distributed Resource Scheduler

FS – File System

I/O – Input/Output

R/W – Read/Write

OSS/BSS (Operation Support System/Business Support System) — система поддержки операций/система поддержки бизнеса.

  • OSS – NMS системы
  • BSS – Billing системы

В электросвязи — общее наименование для категории прикладного программного обеспечения внутренних бизнес-процессов операторов связи.

DHA – Directory Harvest Attack – подтип bruteforce атаки для поиска валидных mail адресов. Защита простейшая – отключить на SMTP сервере ответ отправителю вида “invalid recepient” для неизвестных адресатов.

Profiler (профайлер) – инструмент предоставляющий данные на основе динамического анализа чего-либо. Чаще всего используетя для оптимизации.

SRE – Site Reliability Engineer. Смесь сис. админа, архитектора и системного инженера. Разрабатывает, внедряет и поддерживает крупные проекты типа gmail, google drive. Как любой архитектор всегда рассматривает вопросы масштабирования, надежности и производительности.

SUT – System under test.

LTE – Long Term Evolution (подразумевается что надолго, long term investment? :/)

MSC (mobile switch center) – коммутирует звонки, сигнализация – пейджинг, посылка вызова, контроль посылки вызова. К нему (не напрямую) подключены бс

MJ – media dj – обработка голоса, сжатия.

NOS – Network Operation System – операционная система, управляющая сетевым устройством. Примеры тут.

MNP – Mobile number portability

NBI – Northbound interface (Северный интерфейс) — в программировании это программный интерфейс, с помощью которого приложение представляет низкоуровневые детали вышестоящему в архитектуре системы приложению. Северный интерфейс обычно рисуют наверху архитектурной схемы.

NaN –  Not-a-Number, «нечисло». Часто является идентификатором ошибки (там должно было быть число, а пришло что-то другое -> поэтому nan)

SBI – Southbound interface (Южный интерфейс) — в программировании это программный интерфейс, с помощью которого приложение обращается к нижестоящему в архитектуре системы, приложению. Разделяет общее представление на технические детали, в основном характерные для одного компонента архитектуры. «Южные» интерфейсы рисуют внизу архитектурной схемы.

ОКС-7 (Общеканальная система сигнализации 7), SS (Signaling System #7) – основной “протокол” взаимодействия между операторами для телефонных звонков

Bit Rot – в программе все ок, но поменялась среда на которую полагается программа (напр. диски, сайты, таблицы), поэтому программа работает некорректно.

Compiler (компилятор) – транслирует код из одного языка программирования source language (высокоуровневого), в другой язык программирования target language (низкоуровневого, понятного для архитектуры компьютера, на котором запускается). Результирующий код после трансляции и исполняется компьютером. Требуется время для компиляции программы, но в плюсе – скорость работы этой программы (см. компилируемые языки). На разных операционных системах в общем случае (если это не java) используются разные компиляторы, даже если язык и версия одна.

Interpreted languages are not broken into machine instructions beforehand, like compiled languages are.

Programs written in high-level languages can be moved between different computers by using a different interpreter on the new machine or recompiling the code to create a machine language version of the program for the new machine.

Interpreter (Интерпретатор) – интерпретатор передает CPU на исполнение инструкции, конвертируемые им из кода на языке программирования высокого уровня, без компилирования кода в низкоуровневый язык (см. интерпретируемые языки). Программа трансилуется в машинный код построчно и сразу после трансляции исполняется. На разных операционных системах в общем случае (если это не java) используются разные интерпретаторы, даже если язык и версия одна.

Interpreted languages are not broken into machine instructions beforehand, like compiled languages are.
interpret - execute a program in a high-level language by translating it one line at a time.

Programs written in high-level languages can be moved between different computers by using a different interpreter on the new machine or recompiling the code to create a machine language version of the program for the new machine.

Compiled Language (компилируемые языки) – языки, которые нуждаются в компилировании source кода для старта работы. Весь код трансилируется в машинный сразу для последующего исполнения. Достоинство – скорость, недостаток – долгий запуск и тестирование. Примеры: C++, go, objective C.

compile - To translate a program written in a high-level language into a low-level language all at once, in preparation for later execution.

Internet – Interconnected Networks

Interpreted Language (интерпретируемые языки) – языки, которые не нуждаются в компилировании source кода для старта работы. Код передается через интерпретатор на исполнение компьютеру без компиляции. Достоинство – быстрый запуск и тестирование, недостаток – скорость. Примеры: ruby, python, javascript, powershell, sh.

memory leak – утечка памяти. Приложение не отдает часть памяти после использования, в результате чего постепенно отжирает все больше и больше памяти. Метрики утечки описаны тут.

MTTR (mean time to repair) – средняя скорость восстановления работоспособности системы.

Pareto Principle (принцип Парето) – 20% усилий дают 80% результата, а остальные 80% только 20%.

Microsoft noted that by fixing the top 20% of the most-reported bugs, 80% of the related errors and crashes in a given system would be eliminated.

The hardest 20% of the code takes 80% of the time.

80% of sales come from 20% of clients

80% of the land in Italy was owned by 20% of the population

20% of the world's population controlling 82.7% of the world's income

Serverless technology – небольшой код который хранится не на твоем сервере, но принадлежит тебе (пример код-академи окна и прочие). Исключает необходимость какой-либо возьни с серверами – ОС, апдейты, огранизация кластеров и проч.

It eliminates infrastructure management tasks such as server or cluster provisioning, patching, operating system maintenance, and capacity provisioning. You can build them for nearly any type of application or backend service, and everything required to run and scale your application with high availability is handled for you.

Operator – символ, которые обозначает операцию (сложение, вычитание, умножение, etc)

operator - A special symbol that represents a simple computation like addition, multiplication, or string concatenation

Operand – значение, с которым работает оператор.

operand - One of the values on which an operator operates.
Operational technology (OT) includes computer systems designed to be deployed in critical infrastructure (power, water, etc.), manufacturing, and similar industries. ((производственные технологии))
OVF – Open Virtualization Format. Открытый стандарт, который позволяет перемещать VM между одним и даже разными гипервизорами.
One arm test – порт генерирует трафик (эмуляция клиентской стороны), трафик принимается не на тестовом устройстве
Two arm test – один порт генерирует трафик (эмуляция клиентской стороны), второй принимает (эмуляция серверной стороны)

flow control в программировании – изменение последовательности обработки:

    • Это может быть branching с помощью if-else (если то-то, то это).
    • Это может быть loop с помощью итераций for/loop/each (сделать столько то раз).

\r\n

    • \r – carriage return, курсор должен быть перемещен в начало строки
    • \n – newline separator, курсор должен быть перемещен на новую строку

 

Wikipedia (wiki) – ненадежный источник информации, не стоит его использовать как reference. При этом использовать reference, на которые идет ссылка в wikipedia – потенциально лучшая практика.

As I teach my students not to use Wikipedia as a reference (e.g. because it is not a stable document), but rather read its sources, I tried to do the same.

 

Leave a Reply