Конструирование бинарных пространств на основе неравномерных разбиений

THE ANALYSIS OF THE DESIGN OF THE MIXER FOR PREPARATION OF FEED MIXTURES

© 2016

P. N. Solonikov, candidate of technical sciences, docent of the department «Technological equipment»

Vyatka state agricultural Academy, Kirov

Annotation. Abstract. The article highlights the review of equipment for preparation of feed mixtures, and the proposed design of the mixer, which combines the functions of pump, mixer and dispenser. The basic requirements for the development of such devices that need to be considered at the design stage. On the basis of the analysis was developed by the design of the mixer for preparation of feed mixtures, created on the basis of centrifugal pump that combines the functions of three devices: the pump, mixer and dispenser. Theoretical analysis for the mixer was provided in the form of a block diagram of the functioning of the device, which allows approach to the study of workflow in planning and conduction of the experiment and thereby obtain the mathematical description of the source processes in the form of regression equations. The equations of motion of a particle in a working wheel, which allows to determine the speed and the trajectory of the particle during its motion before the interaction and after the interaction with the stationary blades, with a specified maximum window size for the cover disk of the impeller that allows you to evenly apply the material, and the radius from the center of rotation. Experimental studies have confirmed efficiency of the supply device, a dispenser, and when carrying out the experience on the CME-livaniou, the values obtained at different modes, namely continuous and batch making of components in the installation.

Keywords: analysis, block diagram, fluid, component, construction-grade pump, review, product, impeller, mode, power, system, mixer, mix, scheme, trajectory, equation, unit, device, bit.

УДК 004.421

КОНСТРУИРОВАНИЕ БИНАРНЫХ ПРОСТРАНСТВ НА ОСНОВЕ НЕРАВНОМЕРНЫХ РАЗБИЕНИЙ

© 2016

А. А. Смагин, доктор технических наук, профессор, заведующий кафедрой «Телекоммуникационные технологии и сети»

Ульяновский государственный университет, Ульяновск

Аннотация. В статье описываются модели неравномерных разбиений бинарного пространства, разложение матрицы пространства памяти, операции с подпространствами, конструирование подпространств. Описан способ, основанный на сдвиге сигнальной единицы. Рассмотрен способ образования пространств строки матрицы сегментов, который базировался на смещении правой границы нижней треугольной матрицы адресов (уменьшении числа битов в адресе путем отбрасывания младших разрядов). Однако имеется возможность создавать подпространства строки матрицы группированием и выделением соседних адресных битов. Предложены способ матричного описания разбиений, виды операций над разбиениями ,оценки размеров разбиений, поиск среди множества других. Доказано, что реализация разбиений может осуществляться программным и аппаратными способами, однако наибольший эффект в достижении быстродействия может быть получен во-втором случае, когда важнейшее значение приобретает время поиска пространства нужного размера. В рассмотренной статье этот параметр подходит независимо от размеров пространства. В теоретическом плане предложенные методы разбиений могут найти применение как средства оценки возможностей формирований подпространств в изначально ограниченном бинарном пространстве.

Ключевые слова: бинарное пространство, разбиение, сегмент, ключ, поиск, размер разбиения, операция над разбиением.

Модель неравномерного разбиения Задача неравномерного разбиения бинарного пространства состоит в получении конечного множества подпространств с независимым доступом, имеющих простые различимые коды ключей, переменные размеры, независимое от размеров подпространств время доступа. Решение такой задачи может найти свое применение при построении высокопроизводительных специализированных вычислителей, работающих с использованием сжатых таблиц функций [1],

в информационных системах с иерархической сортировкой и поиском данных [19], моделированием в системах построения экономных методов кодирования сообщений [6].

Решение поставленной задачи включает решения двух подзадач:

1) построение способа компактного задания бинарного пространства.

2) разработка способа рационального разбиения пространства.

88

Бинарное пространство задается множеством бинарных векторов

X= ХпXn_i Xn_2...X3 Х2Xi,

где х = (0;1),п - длина, п = 1, 2, 3,.... Все пространство вмещает 2n векторов. Неравномерное разбиение приводит к выделению подмножеств подпространств с разными размерами и свойствами. При этом, подпространства могут изменять свои размеры, объединяться и сними можно работать как с самостоятельными объектами, причем они будут сохранять принадлежность пространству из которого они порождены.

Рассмотрим способы неравномерного разбиения пространства. Наиболее простым является способ, основанный на сдвиге сигнальной единицы.

Разбиением множества двоичных векторов Хбудем называть множество подмножеств S ^ X,

удовлетворяющих условиям:

1) Sf\Sh = 0 при i Ф h;

2) US, = X.

Пусть n - разрядный двоичный вектор X=xnxn-ixn_2.x3x2xi, x={0,i} задает пространство памяти из 2п попарно различимых ячеек памяти. Положим в этом векторе на всех позициях, кроме xi, нули, а на позиции xi запишем единицу, то есть вектор X примет частное значение Xi = 0n 0n-i 0n_2...03 02 ii. Очевидно, этот вектор задает первое элементарное подпространство.

Будем выполнять пошаговую операцию сдвига на один разряд влево вектора Xi и при сдвиге на освобождаемую единицей позицию записывать переменную x. Тогда вектор Xi за n-i шагов породит векторматрицу (n*n) следующего вида:

R

0n 0n-i 0 n-2 ... 0з 02 ii _ i

0n 0n-i 0 n-2 ... 03 12 xi

0n 0n-i 0n-2 ... I3 x2 xi

0n 0n-i in-2 ... x3 x2 xi

0n in-1 xn-2 ... x3 x2 xi

in xn-i xn-2 ... x3 x2 xi _ n

Элементы такой матрицы определяются как

r

1, при j = i; \ 0, при j > i;

x,npu j < i,

где 1 < j < n.

Вектор X1 является порождающим для матрицы (2). Единицы, находящиеся на главной диагонали матрицы (2), будем называть сигнальными.

Определение 1. Квадратная матрица (n*n) вида (2) называется полной; в такой полной матрице все позиции за сигнальными единицами заполнены переменными x.

В общем виде любая строка (2) может быть записана как

Xi = [0 n 0 n-V° j+ll Jxj-1-x2xi]

и представляет собой троичный вектор, элементы которого берутся из множества {0, 1, x}. Вектор (3) можно представить более компактно

X, - [0vijxt],

где j- номер позиции единицы, v- число нулей слева от единицы, t - число переменных х справа от единицы. Компактная запись особенно удобна при описании массива, полученного после сжатия. В частности, допускается запись Xt — [01. x], которая

указывает на полное пространство).

Каждая строка (2) задает собственное подпространство S вектора X. Исследуя последовательности символов в строках (2), можно заметить, что они состоят из двух частей: левой константной 0n0n_1...0j+11j, которая является задающей координатой подпространства, и правой, определяющей адреса и, следовательно, объем подпространства. Из (2) следует, что пространство вектора X состоит из разбиений

5 = Oi, 52,..., Sn ) |-2” n

причем ^ s = 2n, и функция разбиений в дан-

i=i

ном случае имеет вид P(S) =2-1. Отметим также, что разбиения не пересекаются между собой, и каждое из них имеет собственную верхнюю границу, равную P(S), причем элементы Si - разбиения вычисляются по формуле

i—1

S, = 2' +Х2'x ,

^=0

где i - десятичный номер строки в (2). Верхняя граница (2.4) получается при всех x=1, а нижняя -при всех х = 0.

Троичный вектор (3) представляет собой частично упорядоченное множество, которое имеет

Г\ m

максимальную нижнюю 6Я и максимальную верхнюю 6m границы: 6H — 1j0j_i0j_2...0201 и

6B = ij0j_i0j_2...020i, кроме того, они пронумерованы. Следовательно, о троичном векторе (3) можно говорить как о некоторой структуре.

Определение. Структура вида (3) называется адресным сегментом. Областью определения адресного сегмента Si является вектор [0n0n-l...0j+li]].

89

Определение. Группа символов адресного сегмента Si, состоящая из переменных х, называется адресом сегмента. Адрес /-го сегмента имеет вид As = xi_Ixi_2...x2xI. Очевидно, что общее количе-

/ J J

ство ячеек памяти, адресуемое адресом /-го сегмента, равно 2~1.

Общее количество ячеек памяти, адресуемое п строками одной матрицы (2), составляет

w

= 1 + 2

/=1

где число 2 подразумевает включение в пространство памяти двух ячеек из первой строки с адресами

X0 = 0n0n-i-..020i, X\ = 0п0п_1...0211.

Примечание. В матрице (2) используется второй вектор Xj для удобства ее обработки. В реаль-

V о

ных условиях нужно учитывать и X j .

Так как длина адресов подпространств - переменная от 1 до n-1, то подпространства имеют разную длину, и, следовательно, разбиение пространства вектора X есть неравномерное разбиение.

Поясним геометрически образование подпространств переменного размера. Разместим 2пзначений п- компонентного двоичного вектора

X n = x x ,x^x, на числовой оси с шагом 2-п. Разрежем полученную шкалу на отрезки размером [21, 2г+1-1], где i = 2,2,3, ..., п, т. е. таким образом, чтобы каждый последующий отрезок был бы вдвое длиннее предыдущего (самый левый отрезок имеет единичную длину), расположим эти отрезки друг над другом в том же порядке в каком они находились на числовой оси (рис. 1).

Если исследовать вид чисел, принадлежащих каждому отрезку, то можно заметить, что, в силу предложенного способа разбиения, некоторые битовые фрагменты старших разрядов этих чисел не меняются на всем отрезке. Следовательно, отрезки можно задать троичными векторами. Заменив отрезки троичными векторами, можно из треугольника отрезков получить матрицу (2).

Определение 4. Рангом адресного подпространства называется количество битов, входящих в правую часть (3). Очевидно, что все адресные сегменты структуры (3) имеют разные ранги.

Введем обозначение: адрес, принадлежащий i-му подпространству, будем обозначать AK , где ниж-

ний индекс указывает на номер подпространства, а верхний - на порядковый номер адреса внутри подпространства, причем к = 0,1,2,...,2-1. Любой десятичный адрес < AK >10, принадлежащий i-му подпространству, может быть вычислен по формуле

i—2

<AK > 10 =Х 2£ x, ,

£=о

X,

где i - десятичный номер строки матрицы (2).

Степенной ряд (5) является производящим адреса i-го подпространства, и его вид совпадает с формулой получения элементов Si -разбиения(4).

Определение 5. Неравномерным разбиением пространства вектора X называется пространство подпространств, которые образуются строками матрицы (2).

2"-1___________..._______2" - 1

Рисунок 1 - Геометрическая интерпретация модели

Назовем матрицу сегментов (2) моделью неравномерного разбиения пространства памяти. Строки-векторы полной матрицы (2) задают базис пространства вектора X, число строк задает размерность пространства.

Определение 6. Часть i-й строки матрицы (2), получаемая путем отбрасывания переменных х, находящихся справа от сигнальной единицы, будем называть признаком, или ключом подпространства, и обозначать через Ki.

Ключ представляет собой двоичную константу переменной длины

K = 0п0п_1...0]+1].

Каждый сегмент имеет собственный ключ. Для матрицы (п*п) максимальное число ключей соответствует количеству подпространств и равно п.

Введем формулу, с помощью которой по числовому значению кода ключа можно определять его длину.

Лемма 1. Пусть £ к - длина кода ключа Къ вы-

Ki

раженная в битах, а < ZK > - значение кода ключа Ki.

Тогда длина кода ключа Ki определяется следующим образом:

£ K = п — log2 < Zк >.

Доказательство. Найдем десятичное значение кода ключа Кчерез десятичный номер сегмента как < Z^ >=2-1. В свою очередь, длина £ определяется

90

по формуле £к = n - i +1 .Выражая 1К через

< Z^ >, получим £к = n - log2 {ZK > .

Лемма 2. Множество ключей К из (2) представляет собой префиксное множество.

По определению префиксное множество - это множество кодов, в котором ни одна комбинация кода не совпадает с началом более длинной комбинации другого кода или удовлетворяет неравенству Крафта

П

£2 "i ^ i

i=1

где £t - длина (в битах) i-го ключа.

Докажем префиксность кодов ключей из (2). Для этого неравенство Крафта запишем как

£2 £K = £2 ~(n~‘og2 (ZK') .

i=1 i=1

Выражение (7) представляет собой убывающий на единицу ряд целых неотрицательных чисел. Сумма этого ряда вычисляется как n(n+1)/2. Следовательно, при любом целом неотрицательном n

2~n(n+1)/2<i

что и требовалось доказать.

Префиксность кодов ключей обеспечивает их простую дешифрируемостъ, что имеет особенно важное значение в том случае, если, например массив из 2пслов разбит на блоки по n бит и эти блоки передаются по каналу связи старшими битами вперед (не требуется введения дополнительных разделительных символов).

Так как элементами пространства вектора Xяв-ляются адреса, представляющие собой целые числа, то в дальнейшем будем считать, что имеем дело с целочисленным пространством и его топологию будем определять двумя целочисленными координатами Ки

А .К={Ко,КьКъ...,Кп}, A = (A1,A2,..., An}. Иначе говоря, каждый вектор - адрес Xi =xnxn_1...x1 будет определяться парой координат, т. е. X. = (Ki,yii) ,и представлять собой точку с целочисленными координатами в декартовой системе координат К, А. Следовательно, все множество точек - адресов образует систему - двумерную решетку.

Принадлежность некоторого подмножества

векторов X одному из n разбиений матрицы (2) можно выразить через отношение эквивалентности. Будем считать, что на каждом подмножестве двоичных векторов, входящих в разбиение, установлено отношение

эквивалентности B, которое рассматривается как

совпадение признаков - ключей К, и X B Xu означает, что Xq и Хинаходятся в одном и том же сегменте.

Отсюда следует, что на всем множестве двоичных векторов {XftX^-vX }задано множество отношений эквивалентности {B0,B1,B2,...,Bn}, каждое из которых определяет принадлежность любого из двоичных векторов Xi е X2„ одному из n разбиений.

Сопоставим каждому элементу из i-го разбиения пару целых чисел X. ^ {tc, r>, где tc - номер сегмента, в который попало значение вектора <Х>, r - порядковый номер элемента XP в i-м разбиении.

Если номеру сегмента tc будет соответствовать значение, кода ключа, а порядковому номеру r - значение частичного адреса, то элементы Xq и Хисчитаются элементами одного сегмента, если у них совпадают первые номера, т. е. tc = tc

Дополнительно отметим, что число ключей равно n, что также обеспечивает сравнительно небольшие общие затраты на их хранение и дешифрацию.

Разложение матрицы пространства памяти Пусть полная матрица R(i,j )(2) получит разложение по диагонали, состоящей из сигнальных единиц, на две треугольные матрицы Ки Аследующим образом:

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

Матрица К является треугольной верхней, и ее элементы определены как

\1,пРи i = j,

(lJ> \0,при j > i.

Матрица A является нижней треугольной, и ее элементы определены как

A (i,j) = x при j<i.

Утверждение 1. Необходимым и достаточным условием существования матрицы адресных сегментов вектора X являются:

91

а) представление каждой строки матрицы (2) в виде последовательности (3);

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

Следствие 1. Разбиение отроки (2) на части позволяет получать ключ естественным образом и осуществлять целенаправленный поиск подпространства.

Обоснованность выбора ключа вида (6) состоит в следующем:

- ключи вида (6), задавая подпространства

S = (K,Ai), при подстановке на места переменных

х всех нулей и всех единиц образуют естественные верхние и нижние границы разбиений в пространстве вектораX;

- наличие последовательности нулей перед сигнальной единицей позволяет достаточно просто отличать ключи друг от друга (свойство префиксно-сти);

- позиция сигнальной единицы в строке матрицы позволяет определить размер подпространства, задаваемый адресной частью строки;

- уникальность кодов ключей (использование нескольких сигнальных единиц в коде ключа приводит к искажению процесса идентификации);

- простой способ образования ключей.

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

Утверждение 2. Пусть имеется пространство ключей K=(Ki, K2,..., Kn}, n - целое, представляющих собой уникальные коды вида (6). Тогда всякий ключ может быть рекуррентно найден через любой ключ из К, если известно строчное расстояние между ними, по формулам

K = Kq?-q = K/X npui>q;

Kq = K /2’-q = K /2dp , npui<q;

q < i, l < q < n.

За строчное расстояние примем разность dp между индексами соответствующих ключам строк полной матрицы сегментов. Пусть, как и раньше, индекс у имени ключа Ki будет обозначать номер строки полной матрицы сегментов. Если сравнить два любых ключа из соседних строк, то увидим, что их численные значения отличаются сомножителем 2, т. е. все последующие ключи можно рекуррентно вычислить через соседние, и если процесс нумерации начинать с верхней строки матрицы, то формула для получения ключа следующая: Ki = Ki-l-2, а если - с нижней строки, то ключи вычисляются по формуле Ki = Kj+l/2.

Возьмем несоседние ключи K2=0n0n-l,0n-2...0403l2 и K5 = 0n0n_1...070615. Разность между второй и пятой строками t25=3. Тогда, для того чтобы получить К5, необходимо произвести умножение: K5=K2 23.

Обратно, чтобы из Кполучить K2, необходимо вместо умножения на 2 выполнить деление на 2 . Действительно, K2 = K5/23. Рассмотрим предельные случаи, когда ключи взяты из верхней и нижней строк матрицы сегментов: K1 =0n0n_1...030211; Kn=1n. Разность между первой и n-й строками полной матрицы tln=n-l. Следовательно, K1=Kn/2n-1, Kn = Kl2n-1.

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

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

1. Для любых Kl е K, K2e Химеет место либо К1 Е К2, либо К2 Е Kl, но не сразу оба этих условия. Действительно, пусть Kl = 0n0n-l...02ll = l, а К2 = 0n0n_ l...03l2=2, тогда отношение E будет математическим отношением <, т.е. К1<К2, и, следовательно, не может быть K2 < Kl, тем более выполнение обоих условий. В свою очередь, выполнение этого свойства можно проверить для любой пары ключей Ki и ^при условии i < q (если же i > q, то отношение < заменяется отношением >).

2. Бинарное отношение E не рефлексивно ни для одного Kie К (действительно, не может быть К1<К1).

3. Отношение Е антисимметрично - невозможно при Kl < К2, выполнение K2 < Ki.

4. Отношение Е транзитивно - выполняется при К < K2 и К2 < К3 ^ К < К3.

В заключение отметим, что в общем случае пространство двоичного вектора Хинтерпретируется

как ппар пространств векторов Ки A . Множество векторов {Kl, К2, ..., Кп} образует базис, состоящий из ключей переменной длины Kl = \0n...02ll\,

K2 = \0n...03l2],...,Kn = \ln\. При этом считается, что

пространство троичного вектора S = {S13S2,..., Sn }

порождено этим базисом, и его размерность равна n. Базис определяет в пространстве троичного вектора

S систему отсчетов (систему координат). При этом

пространства частичных адресов A задают координаты соответствующих троичных векторов или точки этих пространств.

Размеры пространств определены длиной адресных частей A троичных векторов.

92

Таким образом осуществляется переход от рас-

2н

, , , двоич-

ных векторов к пространству из n троичных векторов, т. е. к новому пространству с новыми свойствами. Переход осуществляется в четыре этапа: 1) разбиение пространства вектора X на группы по определенному правилу; 2) представление групп троичными векторами; 3) образование матрицы из троичных векторов; 4) КА - разложение матрицы на верхнюю и нижнюю треугольные матрицы.

Операции с подпространствами В процессе проектирования, например структур памяти для размещения сжатых массивов данных, может возникнуть необходимость уменьшения размеров подпространств, отводимых под строки полной матрицы (2), или перехода от подпространства с меньшими к подпространству с большими размерами. Иначе говоря, над подпространствами памяти нужно производить определенные действия.

Как указывалось выше, пространству вектора X принадлежат множество ключей

К = {KI,K2,^,Kn} и множество адресных векторов А = {Aj, А2,...,Ап} , поэтому пространство X в

самом общем виде будем задавать парой X = (К,А ]. Но разбиения (2) задают это же пространство как

множество подпространств: X = S = {Sx, S2Sn } .

Введем определение подпространства вектора S и в дальнейшем на соответствующем уровне иерархии разбиений будем пользоваться им как структурной единицей, т. е. как самостоятельным математическим объектом.

Определение 7. Множество S. = (Ki,^4i) является подпространством (сегментом) адресного пространства вектора X тогда и только тогда, когда:

1) ключ Кимеет вид (6) и не является ключом никакого другого подпространства вектора X;

2) адрес Ai образуется разложением матрицы (2) по диагонали сигнальных единиц, и его длина И . <п;

Ai

3) само подпространство St не пересекается ни с каким другим подпространством матрицы (2), т.е. ~ П Sk = 0, i, k = I,n .

На множестве подпространств

{Si | i = I, n} введем два закона композиции: 1) сложение подпространств; 2) умножение на скаляр. Эти операции будут проводиться с троичными векторами. Обозначим операцию сложения знаком +, а операцию умножения - знаком я.

Определение 8. Суммой подпространств St и Sk (i, k=I,k ) будем называть такое подпространство

Sik = S + Sk , получение которого подчиняется следующим правилам:

x] 0a] = a] 0 x] = x] +1+i;

0 01 = 10 0 = I;

>

101 = xj +1]+i ;

0 0 0 = 0,

где 0 - поразрядная операция; a . = {x. ,I,Ij+1,0} .

Пример 1. Пусть заданы два подпространства

S 4, и

S з:

S4 0n0n-I...05I4X3X2XI и

S3 = 0n0n-1... I3x2x1 .

Произведем суммирование соседних подпространств.

S3 = 0n0n-1 050413x2x1

+

_____S 4 0n 0n-1 ••0514x3 x2 x1

S3,4 = 0n0n-1 •15x4x3x2x1;

S3,4 = S3 + S4 = 0n0n-1 • • •06I5x4x3x2x1.

Пример 2. Пусть нужно объединить два одинаковых подпространства S4 и S4

S4 = 0n0n-1 •••0514 x3x2x1

+

S 4 = 0n0n-1 •0514x3x2x1 S 4,4 = 0n0n-1 •15x4x3x2x1.

Отметим, что операция сложения подпространств обладает свойством коммутативности

Si + Sk = Sk + St, ассоциативности

~i + (~ + ~ ) = (~i + ~ ~ .

Определение 9. Умножением подпространства Si на скаляр р будем называть произведение

Si,P = Si • Р , где Р

{0, 2.qlq = 0,I,2,3,...,2n-I}, кото-

рое выполняется по правилу

S,p= S, р = [0I]x] • 2q = [0Ij+qxJ.

Пример. Пусть задано подпространство

S5 = 0n0n-I •I5x4x3x2x1 и скаляр р = 22, тогда их произведение равно

S5,p = S 5 ' Р = [0n0n-1 •I5x4x3x2x1 ] • 2 = 0n0n-1 • •I7 x6xsx4x3x2x1.

Фактически операция умножения троичного вектора на скаляр есть операция сдвига влево или вправо его кортежа x в зависимости от знака р. Как видно из последнего примера, сигнальная единица в

93

результате умножения переместилась влево на две позиции. Старший бит частичного адреса троичного вектора занял позицию сигнальной единицы, кортеж переменных х стал на две позиции длиннее, тем самым увеличив адресное подпространство в четыре раза. Что касается множества {р0, рх,..., р„ }, то среди его элементов существуют:

а) элемент р = 2°, который является

нейтральным (действительно, St • 2° = 2° • St = St,

т. е. при умножении троичного вектора на нейтральный элемент «вид» вектора не изменяется);

б) элемент р°=°, являющийся нулевым (умножение любого троичного вектора на нулевой элемент дает вектор пространства X c единственным элементарным пространством, адрес которой °n°n-

I...°j+I°j°j_I...°2°l).

Операция умножения троичного вектора на скаляр коммутативна: S. * р = р* Si. Если же сочетать операции сложения и умножения на скаляр, то можно заметить, что их связывает закон дистрибутивности: (S + Sk) • р = S. • Р + Sk • р. Отметим,

что умножение троичного вектора на скаляр является внешним законом композиции на множестве троичных векторов.

Рассмотрим свойства элементов множества {Sx, S2,..., Sn } . Относительно внутреннего закона композиции - операции сложения - на множестве {S, S2,..., Sn } отсутствуют нейтральный и симметричный элементы, поэтому, с учетом свойства коммутативности и свойства ассоциативности, можно говорить о множестве {Sl3 S 2,..., Sn } и операции сложения как об абелевой (коммутативной) полугруппе.

Множество подпространств S вместе c определенной на нем операцией умножения и свойствами коммутативности, ассоциативности, а также существованием нейтрального и нулевого элементов образуют абелеву (коммутативную) группу.

Определение 10. Разложением ключа ^троичного вектора St называется операция у вынесения из ключа группы старших битов

щ(К1:къ) = °hb[°n-hb1j].

Запишем в более общем виде:

¥(Kt:hb) = К,(КЪ).

Определение 11. Группу старших вынесенных битов из ключа К назовем дополнением до ключа Ki.

Определение 12. Базой ключа К  будем называть оставшуюся часть ключа Ki.

Очевидно, что существует операция у-1, обратная операции у и такая, что ¥1(К ,Къ) = К. .

Пример. Пусть задан ключ К5= °n°n_1...07 °6 15. Осуществим операцию увынесения дополнения К :

щ(К5) = К5¥(КЪ) = [°п°п_,..°7][°615].

Лемма 3.3. Количество выносимых битов ^за пределы кортежа двоичных переменных ключа Кменьше значения номера позиции, на которой находится сигнальная единица, т. е. hb<j, где/- позиция сигнальной единицы.

Действительно, пусть hb > j. При вынесении дополнения К будет вынесена и часть двоичного век-

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

Рассмотрим операцию вынесения дополнения ключа на множестве ключей, т.е. в пространстве треугольной матрицы К. Запишем эту операцию применительно к рключам:

¥(St,SM,Sp:hb) = Kht.p(КЪ,КЪМ,...,Кър) .

Для р - местной операции вынесения дополне-

ние ключей Ки называется общим признаком для

ключей К Кь...,Кр.

Пример. Пусть р = 2, К4 =°п°п_1...0514,К3=°п°п_ 1...0413. Выделим с помощью (14) общий признак:

¥(К4,К3:5)=у([°п°п-1-0514],

[°n°n-1.. 0413]} =[°n°n-1 05]{[14],

[°41з]}=[°5]{[14],[°41з]}.

Таким образом, для подпространств S4 (ключ

К4) и S3 (ключ К3) выделен общий признак К4?3 = [°5],

состоящий из (n-^нулей и занимающий позиции с 5-й по n-ю.

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

Многоместная операция вынесения общего признака (16) имеет важное значение для случая объединения подпространств, организованных параллельно друг другу. Как будет показано ниже, операция поиска нужной ячейки памяти в этом случае существенно упрощается. Заметим, что подпространства St, Sе,..., Sp вошедшие в объединение подпро-

странств Su = S + S^ + ... + S , будут иметь две области существования:

1) новую совокупность образующих координат - общий признак KiX. ,р;

94

2) множество баз Kb , KpKbp .

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

Конструирование подпространств

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

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

~08 07 0б 05 04 03 02 1l " 1

08 07 0б 05 04 03 12 x1 2

08 07 0б 05 04 13 x2 x1 3

R = 08 07 0б 05 14 x3 x2 x1 4

08 07 0б h x4 x x2 x1 5

08 07 16 Х5 x4 x x2 x1 6

08 17 х6 x5 x4 x x2 x1 7

1 Х7 х6 x5 x4 x3 x2 x1 _ 8

Полная матрица

Возьмем из матрицы (2) i-ю строку, адресная часть которой задает (j - 1) битов. Очевидно, что максимальное число ячеек памяти составит Т1. Для заданной строки управление размером подпространства можно осуществлять отбрасыванием старших или младших битов адреса. Отбрасывание старших или младших разрядов адресной части строки приводит к преобразованию этой строки. Будем на месте отбрасываемых разрядов ставить прочерки. Предположим, что у адреса i-й строки, имеющего вид Д = xy_,xy_2 ... x3x2x7, отброшены два младших бита, тогда адрес Д будет представляться как

Д = Xj-1 xj-2 - -- Х3-.

Преобразование строк матрицы сегментов (2) за счет выбрасывания адресных битов вызывает изменение конфигурации нижней треугольной матрицы A и уменьшение ее площади по сравнению с исходной. Эту площадь можно оценить и по оценке - судить о размерах подпространств и самого пространства вектора X.

Ниже приведен пример преобразования полной матрицы (n=8) в матрицу сегментов c шириной ленты ё = 2.

08 07 06 05 04 13 x2 x1" 1

08 07 06 05 14 x3 x2 - 2

08 07 06 15 x4 x3 - - 3

08 07 16 x5 x4 - - - 4

08 17 x6 x5 - - - - 5

18 x x6 - - - - - 6

Ленточная матрица

Нетрудно убедиться, что максимальная ширина ленты Нравна (п - 2), причем в этом случае матрица сегментов будет состоять из двух нижних строк. Для приведенного выше примера преобразованная матрица сегментов представляется следующим образом:

r2 =

1

17 x6 x5 x4 x3 x2

x x6 x5 x4 x x2

Минимальная ширина ленты равна 1 биту, т. е. в этом случае каждое подпространство состоит из двух ячеек памяти. Отметим, что с увеличением размеров подпространств при равномерном разбиении пространства вектора Х(в случае ленточной матрицы) количество подпространств уменьшается. При этом справедливо соотношение H = п-ё, где Н - число подпространств. Для последнего примера образуются

0

x

8

два подпространства общим объемом V = 226 = 128 битов, в то время как вектор X порождает пространство размером 256 элементарных пространств. В общем случае суммарный объем всех подпространств ленточной матрицы сегментов равен V =

QM-2, где QJM - число строк ленточной матрицы.

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

Рассмотрим другой случай, когда в пространстве вектора X производится неравномерное разбиение, при котором сигнальные единицы не занимают положение главной диагонали, как в матрице (2). Введем понятие расстояния между подпространствами.

95

Определение 13. Расстоянием G между подпространствами Sk и S£ называется разность кодов ключей этих подпространств Dk_e = Кк — К£, где к,£ = 1,n и к> £ .

Определение 14. Соседними подпространствами называются два подпространства S и S расстояние между которыми

D — q = К — Kq = 2 '—1 = 2 ^ ,

где i>q.

Рассмотрим пример. Пусть i=5, а q=4, тогда D5—4 = 25 — 24 = 24 ,следовательно, подпространства соседние.

Определение 15. Два подпространства Sk и S называются несоседними, если выполняется условие Dk—t = Кк — К£ > 2, где k> £ .

Пример. Пусть ключи двух подпро-странствК6иК4имеют вид: К6 = 080716,К4=0807060514,

т.е. к=6, £ = 4,тогда D6_4 = 64 —16 > 24.

Определение 16. Псевдодиагональю матрицы сегментов называется такая диагональ из сигнальных единиц, которая формирует как минимум два несоседних подпространства.

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

Разнообразие представлений матрицы (2) вследствие «деформирования» (образования ступеней) и смещения главной диагонали дает универсальное средство для получения дискретного пространства вектора X c необходимой конструкцией.

Дополнительно отметим, что введение расстояния D между подпространствами приводит к рассмотрению пространства сегментов

S = (S1,S2,...,Sn) как метрического пространства.

Действительно, пространство сегментов обладает следующими свойствами:

DfSq^) > 0(D(Si,S1) = 0);

D(Si, S2) = D(S 2, SO;

D(S1,S3)=DfsJj+D(S2,S3).

Диапазон изменений значений вектора Хнахо-дится в пределах от 0 до 2n. Однако в реальных условиях для некоторых задач диапазон необязательно начинается с 0 и кончается на значении 2n. Матрица сегментов предоставляет широкие возможности для изменения границ диапазона переменной х. Начало диапазона (нижняя граница) может регулироваться отбрасыванием некоторого числа младших разрядов адресной части строки. Рассмотрим пример. Пусть задана строка с ключом Ks = 08070615, тогда адресное пространство начинается с ячейки памяти с адресом

А = 0,0,00,, а его верхняя граница имеет адрес

Ав = 14131211, так как граничные значения адресов - 0 и 24-1 (если считать бит х£имеющим нулевой вес). Для данной строки начало подпространства можно смещать влево по строке, отбрасывая младшие биты. В случае отбрасывания одного бита нижняя граница адреса смещается на позицию х2(вес 21), и размер подпространства уменьшается вдвое. Можно считать, что в этом случае сегмент изменился и стал определяться как [2, 24 - 1]. Аналогичным образом получаются результаты при отбрасывании последующих битов: [22, 24 - 1], [23, 24 - I].

Определим количество подпространств Н, которое можно задать с помощью строк полной матрицы сегментов при последовательном отбрасывании младших разрядов в адресной части строк.

Определение 17. Подпространством S. i-й

строки матрицы сегментов называется £ - е подпространство, адрес которого сформирован группированием соседних переменныххв адресной части- й строки, причем 1 < £ < Hi.

В общем случае, i-я строка может одновременно задать Н’в = i — 1 подпространств. Следовательно, общее число подпространств, которое удается сформировать адресными частями строк матрицы сегментов, равно

n—1

Нв =^(1 — 1) +1,

i=1

где n > i > 1.

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

Рассмотренный ранее способ образования пространств строки матрицы сегментов базировался на смещении правой границы нижней треугольной мат-

96

рицы адресов (уменьшении числа битов в адресе путем отбрасывания младших разрядов). Однако можно создавать подпространства строки матрицы группированием и выделением соседних адресных битов.

1 2 3 4 5 6 7 8 9 i

Рисунок 2 - Зависимость количества подпространств строки для одной строки модели (2) от номера строки

При таком способе образования адресов число подпространств строки увеличивается, и общее число подпространств i- й строки находится как

£ 4 1

Hi = £ (£ А - P + 1) +1.

pA.-i ’ ’

i

Может быть использована и другая формула:

(£ А)!

H =-------4-----+ £ А,

1 2(£а - 2)! А

которая вычисляет общее количество подпространств без учета количества битов, входящих в частичный адрес подпространства строки. В обеих формулах используются следующие обозначения: £ ^ - длина адресной части строки, Pi - число битов в группе сим-

волов, входящих в адрес £ -го подпространства строки, 1< £ < Hj. Суммарное количество подпространств, образуемой матрицей (2), определяется как

£ А -1

n n i

H £ =£ H =£ {£ (£ А - PA + о+1}.

£ i=1 i=1 ' '

i=1 p£ =1 А

Пример. Возьмем четвертую и шестую строки матрицы сегментов с адресными частями х3х2х1и х5х4х3х2х1.Для четвертой строки сформируем два подпространства: S4 и S 42 о одинаковыми размерами, например, с адресами соответственно х3х2 и х2х1, а для

~ ~1 ~ 2 ~ 3

шестой строки - три подпространства S6, S6 , S6 с

разными размерами, например, с адресами х5х4х3х2,х4х3х2, х3х2х1. Обращение к подпространствам четвертой строки разрешается только при наличии ключа К4, а к подпространству шестой строки - ключа К6. (рис. 3).

Введем иерархию подпространств. Пространство вектора Хесть иерархическое пространство с двумя уровнями иерархии:

1) X = {Si \ i = 1,n} ;

2) . St = {Stn\t = Щ},

где Н^ - число подпространств в пространстве строки S . Способ образования пространств St известен, а подпространства S" формируются путем разбиения кортежа переменных X адресной части строки матрицы (2).

•$4 — 0П ... 07060514X3X2%!

5g~ — 0n0n_! ... 07060514X5X4X3X2%!

Рисунок 3 - Два примера подпространств с общим ключом

Действительно, матрица сегментов задает пространство из n подпространств, принадлежащих строкам матрицы; в свою очередь, подпространство строки состоит из Н^ собственных подпространств. Схематично иерархию можно представить рисунке 4. Следует отметить, что имена подпространств, относящихся к строке, необходимо помечать двойным индексом: первый - номер строки, второй - номер по порядку. Так как подпространства, образованные строкой матрицы (2), имеют один и тот же ключ, то появление ключа в системе памяти будет разрешать одновременное обращение к подпространствам стро-

97

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

Пространство матрицы Подпространство матрицы Подпространство строки

Рисунок 4 - Иерархия подпространств памяти модели

Отметим также и то, что подпространства строки не пересекаются между собой, как и подпространства матрицы (2). Этот факт важен как с точки зрения независимости доступа к ячейкам памяти подпространств, так и с точки зрения параллельной организации модулей памяти.

На графике, изображенном на рисунке 5, представлена зависимость суммарного числа H подпространств, приходящегося на одну строку, от длины частичного адреса подпространства строки.

Рисунок 5 - Зависимость суммарного количества подпространств от длины адресной части строки

Реализация разбиений может осуществляться программным и аппаратными способами, однако наибольший эффект в достижении быстродействия может быть получен во-втором случае, когда важнейшее значение приобретает время поиска пространства нужного размера. В рассмотренной статье подходе этот параметр одинаков независимо от размеров пространства [5]. В теоретическом плане предложенные методы разбиений могут найти применение как средства оценки возможностей форми-

рований подпространств в изначально ограниченном бинарном пространстве [8].

СПИСОК ЛИТЕРАТУРЫ

1. Андерсон Дж. А. Дискретная математика и комбинаторика / Пер. с англ. М. : Издательский дом «Вильямс», 2003.

2. Балашов Е. П., Пузанков Д. В., Смагин А. А., Смолов В. Б. Негода В. Н. Информационные системы : табличная обработка информации. Л. : Энергоатом-издат. Ленингр. отд-ние, 1985. 184 с.

3. Биркгоф Г., Барти Т. Современная прикладная алгебра. М. : Мир, 1976. 243 с.

4. Грэхем Р., Кнут Д., Паташник О. Конкретная математика. Основание информатики. Пер. с англ. М. : Мир, 1998. 703 с.

5. Смагин А. А., Смолов В. Б., Балашов Е. П., Кокаев О. Г. К вопросу применения таблиц функций при построении высокопроизводительных однородных процессоров // Управляющие системы и машин. 1975. № 3. С. 99-102.

6. Мак-Вильямс Ф. Дж., Слоэн Н. Дж. А. Теория кодов, исправляющих ошибки. Перевод с англ. И. И. Грушко, В. А. Зиновьева под редакцией Л. А. Бас-салыго. Москва. «Связь», 1979.

7. Смагин А. А. Модели разбиений : монография. Ульяновск : УлГУ, 2013. 207 с.

8. Смагин А. А. Организация сжатия информации в табличных структурах. Саратов. Изд-во Сарат. гос. университета. 1985. 148 с.

9. Смагин А. А., Чумакин М. Е. Табличная генерация обратной величины методом адресов переменной длины // Управляющие системы и машины. 1989. № 6. С. 105-109.

10. Смагин А. А. Модель неравномерного разбиения памяти для хранения сжатых таблиц. Фундаментальные проблемы математики и механики : Ученые записки Ульяновского государственного университета. Часть 2 Выпуск 1. Ульяновск : УлГУ, 1996. С.74-86.

11. Смагин А. А. Преобразование пространств в модели неравномерного разбиения памяти. Фундаментальные проблемы математики и механики: Ученые записки Ульяновского государственного университета. Часть 2. Выпуск 1. Ульяновск : УлГУ, 1996. С. 86-101.

12. Смагин А. А., Терентьева Ю. Ю. Способ преобразования дискретной информации. Фундаментальные проблемы математики и механики : Ученые записки Ульяновского государственного университета. Часть 2. Выпуск 1. Ульяновск : УлГУ, 1996. С. 101-109.

13. Смагин А. А., Смикун П. И., Терентьева Ю. Ю. Об одном способе построения блоковых кодов // Из-

98

вестия Самарского научного центра РАН. Специальный выпуск. Четверть века изысканий и экспериментов по созданию уникальных технологий и материалов для авиаракетостроения. УНТЦ-ФГУП ВИАМ. Самара. Изд-во Самарского научного центра РАН, 2008. Т. 4. № 3. 2008. С. 99-102.

14. Смагин А. А. Преобразование адресного пространства памяти для сжатия данных // Многопроцессорные вычислительные структуры. (Сб. науч. тр. Вып. 13 (Ш)) Таганрог, 1991. С. 64-66.

15. Смагин А. А., Смолов В. Б., Чумакин М. Е. Об одном методе реализации функции нескольких переменных // Электронное моделирование. 1986. № 1. Т. 8. С. 93-95.

16. Смагин А. А., Чумакин М. Е. Табличная генерация обратной величины методом адресов переменной длины // Управляющие системы и машины. 1989. № 6. С. 105-109.

17. Эндрюс Дж. Теория разбиений, Перевод с англ. Б. С.Стечкина. Москва «Наука». Главная редакция физико-математической литературы, 1982.

CONSTRUCTING BINARY SPACE ON THE BASIS OF UNEVEN SPLITS

© 2016

A. A. Smagin, doctor of technical sciences, professor, head of department «Telecommunication technologies and networks» Ulyanovsk state University, Ulyanovsk

Abstract. The article describes models of non-uniform binary space partition, the position of the matrix memory space, operations with subspaces constructing subspaces. The described method based on the shift signal units. The way of educational spaces in the row of the matrix segments, which was based on the offset of the right edge of the lower triangular matrix addresses (reducing the number of bits in the address by discarding the least significant ones). However, it is possible to generate the subspace matrix rows by the grouping and separation of adjacent address bits. The proposed method matrix description breaks, types of operations on partitions ,estimate the size of partitions, and search among many others. It is proved that the splits may be implemented by software and hardware ways, but the greatest effect in achieving performance can be obtained in the second case, when it is paramount to the search space size. In the article this option is appropriate regardless of the size of the space. In theoretical terms, the proposed techniques partition can be used as a means of evaluating the capabilities of groups of subspaces in the binary initially a confined space.

Keywords: binary space partitioning, segment, key, search, split size, an operation on a partition.

УДК 004.7

ПРОБЛЕМЫ И РЕАЛИЗАЦИЯ КОМПЛЕКСА МЕР БЕЗОПАСНОСТИ КОМПЬЮТЕРНЫХ СЕТЕЙ

© 2016

А. В. Поначугин, кандидат экономических наук

Нижегородский государственный педагогический университет им. Козьмы Минина, Нижний Новгород

Аннотация. Безопасность информационной системы - это характеристика, которая заключается в состоянии системы обеспечить доступность, конфиденциальность и целостность информации. В статье рассмотрены устоявшиеся подходы к информационной безопасности компьютерных сетей. 2015 год не прошел без громких инцидентов, связанных с нарушением информационной безопасности компьютерных сетей и систем. В статье проведён обобщённый анализ угроз безопасности по различным показателям, в том числе и DDoS-атак, за 2015 год, выделены наиболее используемые методы: SYN-DDoS, TCP-DDoS, а также HTTP-DDoS. Основной инструментарий, которым обеспечиваются атаки - это Linux-боты, их часто применяют киберпреступники. В III квартале 2015 года DDoS-атаки с ботнетов, функционирующих на Linux, подобных операционных системах, составили 46 % от общего числа DDoS-атак. Отмечается рост уязвимостей мобильной электроники. Рассматриваются проблемы сетевой безопасности операционных систем Apple. Выявлены наиболее результативные и наименее финансово-затратные способы решения проблем безопасности компьютерных сетей. Определены основные задачи по обеспечению соответствия уровня безопасности на административном уровне, выделен возможный алгоритм действий, направленных на улучшение оказания качественных информационных услуг и обеспечение их исполнения, предоставляя необходимые ресурсы и проводя непрерывный мониторинг фактических показателей. В статье определена важность неоднократной процедуры аутентификации и идентификации пользователей. Выделены возможные способы администрирования для поддержания уровня безопасности сети. Рассматриваются модели администрирования различных по величине и сложности информационных систем. Определены основные

99