Как правильно рассчитать нагрузку на кабель | Полезные статьи
Для того чтобы правильно проложить электропроводку, обеспечить бесперебойную работу всей электросистемы и исключить риск возникновения пожара, необходимо перед закупкой кабеля осуществить расчет нагрузок на кабель для определения необходимого сечения.
Существует несколько видов нагрузок, и для максимально качественного монтажа электросистемы необходимо производить расчет нагрузок на кабель по всем показателям. Сечение кабеля определяется по нагрузке, мощности, току и напряжению.
Расчет сечения по мощности
Для того чтобы произвести расчет сечения кабеля по мощности, необходимо сложить все показатели электрооборудования, работающего в квартире. Расчет электрических нагрузок на кабель осуществляется только после этой операции.
Расчет сечения кабеля по напряжению
Расчет электрических нагрузок на провод обязательно включает в себя расчет сечения кабеля по напряжению. Существует несколько видов электрической сети — однофазная на 220 вольт, а также трехфазная — на 380 вольт. В квартирах и жилых помещениях, как правило, используется однофазная сеть, поэтому в процессе расчета необходимо учитывать данный момент — в таблицах для расчета сечения обязательно указывается напряжение.
Расчет сечения кабеля по нагрузке
Таблица 1. Установленная мощность (кВт) для кабелей, прокладываемых открыто
Сечение жил, мм2 | Кабели с медными жилами | Кабели с алюминиевыми жилами | ||
---|---|---|---|---|
220 В | 380 В | 220 В | 380 В | |
0,5 | 2,4 | |||
0,75 | 3,3 | |||
1 | 3,7 | 6,4 | ||
1,5 | 5 | 8,7 | ||
2 | 5,7 | 9,8 | 4,6 | 7,9 |
2,5 | 6,6 | 11 | 5,2 | 9,1 |
4 | 9 | 15 | 7 | 12 |
5 | 11 | 19 | 8,5 | 14 |
10 | 17 | 30 | 13 | 22 |
16 | 22 | 38 | 16 | 28 |
25 | 30 | 53 | 23 | 39 |
35 | 37 | 64 | 28 | 49 |
Таблица 2. Установленная мощность (кВт) для кабелей, прокладываемых в штробе или трубе
Сечение жил, мм2 | Кабели с медными жилами | Кабели с алюминиевыми жилами | ||
---|---|---|---|---|
220 В | 380 В | 220 В | 380 В | |
0,5 | ||||
0,75 | ||||
1 | 3 | 5,3 | ||
1,5 | 3,3 | 5,7 | ||
2 | 4,1 | 3 | 5,3 | |
2,5 | 4,6 | 7,9 | 3,5 | 6 |
4 | 5,9 | 10 | 4,6 | 7,9 |
5 | 7,4 | 12 | 5,7 | 9,8 |
10 | 11 | 19 | 8,3 | 14 |
16 | 17 | 30 | 12 | 20 |
25 | 22 | 38 | 14 | 24 |
35 | 29 | 51 | 16 |
Каждый электроприбор, установленный в доме, имеет определенную мощность — данный показатель указывается на шильдиках приборов или в техническом паспорте оборудования. Чтобы осуществить расчет нагрузок на провод, необходимо подсчитать общую мощность. Производя расчет сечения кабеля по нагрузке, необходимо переписать все электрооборудование, а также нужно продумать, какое оборудование может добавиться в будущем. Поскольку монтаж производится на долгий срок, необходимо позаботиться о данном вопросе, чтобы резкое увеличение нагрузки не привело к аварийной ситуации.
Например, у вас получилась сумма общего напряжения 15 000 Вт. Поскольку в подавляющем большинстве жилых помещений напряжение составляет 220 В, мы рассчитаем систему электроснабжения с учетом однофазной нагрузки.
Далее необходимо продумать, какое количество оборудования может работать одновременно. В итоге у вас получится значительная цифра: 15 000 (Вт) х 0,7 (коэффициент одновременности 70 %) = 10 500 Вт (или 10,5 кВт) — на эту нагрузку должен быть рассчитан кабель.
Также вам необходимо определить, из какого материала будут выполнены жилы кабеля, поскольку разные металлы имеют разные проводящие свойства. В жилых помещениях в основном используют медный кабель, поскольку его проводящие свойства намного превышают показатели алюминия.
Стоит учитывать, что кабель обязательно должен иметь три жилы, поскольку в помещениях для системы электроснабжения требуется заземление. Кроме того, необходимо определить, какой вид монтажа вы будете использовать — открытый или скрытый (под штукатуркой или в трубах), поскольку от этого также зависит расчет сечения кабеля. После того как вы определились с нагрузкой, материалом жилы и видом монтажа, вы можете посмотреть нужное сечение кабеля в таблице.
Расчет сечения кабеля по току
Сначала необходимо осуществить расчет электрических нагрузок на кабель и выяснить мощность. Допустим, что мощность получилась 4,75 кВт, мы решили использовать медный кабель (провод) и прокладывать его в кабель-канале. Расчет сечения кабеля по току производится по формуле I = W/U, где W — мощность, а U — напряжение, которое составляет 220 В. В соответствии с данной формулой, 4750/220 = 21,6 А. Далее смотрим по таблице 3, у нас получается 2,5 мм.
Таблица 3. Допустимые токовые нагрузки для кабеля с медными жилами прокладываемого скрыто
Сечение жил, мм | Медные жилы, провода и кабели | |
---|---|---|
Напряжение 220 В | Напряжение 380 В | |
1,5 | 19 | 16 |
2,5 | 27 | |
4 | 38 | 30 |
6 | 46 | 40 |
10 | 70 | 50 |
16 | 85 | 75 |
25 | 115 | 90 |
35 | 135 | 115 |
50 | 175 | 145 |
70 | 215 | 180 |
95 | 260 | 220 |
120 | 300 | 260 |
Сечение многожильного кабеля | Полезные статьи
Когда используется кабель многожильный, который не соответствует заявленным характеристикам, изготовлен не по ГОСТу, могут возникнуть нежелательные последствия. Причем в продаже можно встретить кабели, на маркировке и упаковке которых указаны недостоверные показатели. Заявленное сечение может не соответствовать истинной цифре. Получается, что жила кабеля, купленного с учетом конкретной нагрузки, не справляется с током, который должна пропускать. В результате изоляция плавится. Риск возникновения аварийной ситуации, в том числе короткого замыкания, возрастает в разы. Чтобы подобного не произошло, нужно знать, как определить сечение многожильного кабеля.
Особенности расчета сечения однопроволочной (монолитной) жилы
Итак, вы приобрели кабель с однопроволочной жилой и решили замерить его сечение. Чтобы это стало возможно, для начала необходимо обзавестись штангенциркулем, калькулятором, стриппером для снятия изоляции и канцелярским ножиком. Установите сечение по диаметру кабеля. Для этого сделайте следующее:
• Снимите изоляцию с кабеля.
• Измерьте диаметр жилы (при помощи штангенциркуля).
• Вспомните школьную геометрию, а именно формулу, которая позволяет рассчитать площадь круга (токопроводящией жилы круглой формы):
S = π r2, где π = 3,14, а r — это радиус жилы.
Благодаря штангенциркулю можно узнать только диаметр, а требуется — радиус. Следует видоизменить формулу. Известно, что радиус составляет половину диаметра. Формула будет выглядеть так:
S = (π d2)/4, где d — диаметр жилы.
Для сокращения формулы можно поделить число π на 4. Получится стандартная формула для расчета сечения жилы по диаметру:
S = 0,785d2
Произведем расчет на примере кабеля ВВГ-П 2х1,5, у которого диаметр жил при измерении штангенциркулем равен 1,35 мм. Подставляем значение в формулу:
S = 0,785*1,352 = 1,43 мм²
Из расчетов видно, что фактическое сечение жилы на 4,7 % меньше заявленного, что является допустимым занижением.
Выполнить расчет однопроволочного проводника, как показывает практика, несложно. Главное — быть внимательным и не перепутать диаметр с радиусом и наоборот.
Тонкости расчета сечения многопроволочной жилы
Не все кабели имеют однопроволочные жилы, и в таких случаях возникает вопрос: как определить сечение многожильного кабеля с многопроволочными жилами?
Осведомленность в вопросе о том, как замерить сечение многожильного кабеля, позволит быть уверенными в безопасности и надежности использования изделия. Здесь также все предельно понятно. Площадь сечения многожильного кабеля с многопроволочными жилами нужно измерять, отталкиваясь от площади одной проволоки из жил. Действуйте в следующем порядке:
1. Возьмите кабель и снимите с него оболочку и изоляцию с одной из жил.
2. Распушите жилу и пересчитайте все проволоки.
3. Произведите замер диаметра одной из проволок, из которых состоит жила.
4. Воспользуйтесь указанной выше формулой для расчета однопроволочной жилы. Это позволит вам узнать площадь одной проволоки.
5. Полученное значение умножьте на общее число жил.
Например, у вас есть кабель КГВВнг(A) 5х1,5. Зачистив, распушив жилу, замерив микрометром одну из проволок, а также посчитав количество проволок, получим следующие данные:
• Количество проволок — 28 шт.
• Диаметр одной проволоки — 0,26 мм
Для начала высчитаем сечение одной проволоки:
S = 0,785*0,262 = 0,053 мм²
Теперь полученное значение необходимо умножить на количество проволок в жиле — и получим сечение 1,378 мм²
Однако при расчете сечения многопроволочных жил необходимо также учитывать коэффициент укрутки проволок, который будет равен 1,053 для кабелей с многопроволочными жилами класса 5.
Расчет сечения одножильного и многожильного кабеля может осуществить каждый желающий. Для этого необходимо лишь воспользоваться указанными выше формулами. Зная, как замерить сечение многожильного кабеля, удастся правильно выбрать изделие, и в итоге не возникнет никаких проблем. Поэтому перед проведением тех или иных манипуляций, связанных с использованием кабеля, обязательно производите данный расчет.
Компания «Кабель.РФ®» является одним из лидеров по продаже кабельной продукции и располагает складами, расположенными практически во всех регионах Российской Федерации. Проконсультировавшись со специалистами компании, вы можете приобрести нужную вам марку многожильного кабеля по выгодным ценам.
Калькулятор расчета сечения провода по мощности и току
Примеры расчета сечения кабеля по мощности.
К примеру, для трёхфазной нагрузки в 15 кВ необходимо использовать медный провод (прокладка по воздуху).
К сожалению, многие производители выпускают кабели с заниженным сечением по мощности, поэтому в этой статье рекомендуется взять кабель с большим запасом. Для рассмотренного случая рекомендованное сечение провода будет составлять приблизительно 4 мм2.
Необходимо помнить, что большинство пожаров происходят из-за использования некачественной электропроводки. Такую продукцию частенько выпускают многие малые предприятия, чтобы сэкономить на производстве. Из-за этого своё предпочтение лучше отдавать той продукции, которая произведена согласно нормативам ГОСТ крупными предприятиями.
Какой провод лучше использовать для проводки медный или алюминиевый?
В настоящее время, наибольшей популярностью пользуются медные провода. Такие кабели, в сравнении с алюминиевыми, обладают следующими преимуществами:
1) медь прочнее, мягче, в местах перегибов не ломается;
2) медь меньше подвержена коррозии и окислению;
3) медный провод выдерживает большую токовую нагрузку.
Главный недостаток медных проводов – это цена. В среднем их стоимость выше в 3-4 раза. Несмотря на это, медные провода являются более распространёнными и популярными.
Как рассчитать сечение по току?
Табличные значения не могут учесть индивидуальных особенностей устройства и эксплуатации сети. Специфика у таблиц среднестатистическая. Не приведены в них параметры максимально допустимых для конкретного кабеля токов, а ведь они отличаются у продук
Провода для электропроводки. Расчет и таблица допустимого сечения электрических проводов
Ниже я приведу таблицу сечения проводов, но рекомендую набраться терпения, прочитав до конца эту небольшую теоретическую часть.
Это позволит Вам быть более осознанным в выборе проводов для монтажа электропроводки, кроме того, Вы сможете самостоятельно сделать расчет сечения провода, причем, даже "в уме".
Прохождение тока по проводнику всегда сопровождается выделением тепла (соответственно нагревом), которое прямо пропорционально мощности, рассеиваемой на участке электропроводки. Ее величина определяется формулой P=I2*R, где:
- I - величина протекающего тока,
- R - сопротивление провода.
Чрезмерный нагрев может привести к нарушению изоляции, как следствие - короткому замыканию и (или) возгоранию.
Ток протекающий по проводнику находится в зависимости от мощности нагрузки (P), определяемой формулой
I=P/U
(U - это напряжение, которое для бытовой электрической сети составляет 220В).
Сопротивление провода R зависит от его длины, материала и сечения. Для электропроводки в квартире, даче или гараже длиной можно пренебречь, а вот материал и сечение при выборе проводов для электропроводки необходимо учитывать.
РАСЧЕТ СЕЧЕНИЯ ПРОВОДА
Сечение провода S определяется его диаметром d следующим образом (здесь и далее я буду максимально упрощать формулы):
S=π*d2/4=3.14*d2/4=0.8*d2.
Это может Вам пригодится, если вы уже имеете провод, причем без маркировки, которая указывает сразу сечение, например, ВВГ 2х1.5, эдесь 1,5 - сечение в мм2, а 2 - количество жил.
Чем больше сечение, тем большую токовую нагрузку выдерживает провод.
При одинаковых сечениях медного и алюминиевого проводов - медные могут выдержать больший ток, кроме того они менее ломкие, хуже окисляются, поэтому наиболее предпочтительны.
Очевидно, что при скрытой прокладке, а также провода, проложенные в гофрошланге, электромонтажном коробе из-за плохого теплообмена нагреваться будут сильнее, значит следует их сечение выбирать с определенным запасом, поэтому пришло время рассмотреть такую величину как плотность тока (обозначим ее Iρ).
Характеризуется она величиной тока в Амперах, протекающего через единицу сечения проводника, которую мы примем за 1мм2. Поскольку эта величина относительная, то с ее использованием удобно производить расчет сечения по следующим формулам:
- d=√1.27*I/Iρ=1.1*√I/Iρ - получаем значение диаметра провода,
- S=0.8*d2 - ранее полученная формула для расчета сечения,
Подставляем первую формулу во вторую, округляем все что можно, получаем очень простое соотношение:
S=I/Iρ
Остается определиться с величиной плотности тока Iρ), поскольку рабочий ток I) определяется мощностью нагрузки, формулу я приводил выше.
Допустимое значение плотности тока определяется множеством факторов, рассмотрение которых я опущу и приведу конечные результаты, причем с запасом:
Материал провода | Скрытая проводка | Открытая проводка |
Медь | Iρ=6 А/мм2 | Iρ=10 А/мм2 |
Алюминий | Iρ=4 А/мм2 | Iρ=6 А/мм2 |
Пример расчета:
Имеем: суммарная мощность нагрузки в линии - 2,2 кВт, проводка открытая, провод - медный. Для расчета используем следующие единицы измерения: ток - Ампер, мощность - Ватт (1кВт=1000Вт), напряжение - Вольт.
S=I/Iρ=(2200/220)/10=1мм2
Если провести соответствующие расчеты для всего ряда сечений проводов, то можно получить соответствующую таблицу.
ТАБЛИЦА СЕЧЕНИЯ ПРОВОДОВ
Предлагаю Вашему вниманию обещанную в начале статьи таблицу:
Сразу предупреждаю, данные из различных источников могут отличаться. Это различие определяется величиной запаса по мощности.
Приводя расчеты я этот запас взял по максимуму, памятуя, что лучше купить более мощные, соответственно более дорогие провода, нежели потом переделывать сгоревшую электропроводку.
Лишний раз настоятельно рекомендую использовать провода с медными жилами.
© 2012-2020 г. Все права защищены.
Представленные на сайте материалы имеют информационный характер и не могут быть использованы в качестве руководящих и нормативных документов
Таблица ПУЭ выбора сечения кабеля, провода
ПУЭ, Таблица 1. | ||||||
Сечение токопроводящей жилы, мм2 | Токовые нагрузки А проводов, проложенных в одной трубе (коробе, пучке) | |||||
открыто (в лотке) | 1 + 1 (два 1ж) | 1 + 1 + 1 (три 1ж) | 1 + 1 + 1 + 1 (четыре 1ж) | 1*2 (один 2ж) | 1*3 (один 3ж) | |
0,5 | 11 | - | - | - | - | - |
0,75 | 15 | - | - | - | - | - |
1,00 | 17 | 16 | 15 | 14 | 15 | 14 |
1,5 | 23 | 19 | 17 | 16 | 18 | 15 |
2,5 | 30 | 27 | 25 | 25 | 25 | 21 |
4,0 | 41 | 38 | 35 | 30 | 32 | 27 |
6,0 | 50 | 46 | 42 | 40 | 40 | 34 |
10,0 | 80 | 70 | 60 | 50 | 55 | 50 |
16,0 | 100 | 85 | 80 | 75 | 80 | 70 |
25,0 | 140 | 115 | 100 | 90 | 100 | 85 |
35,0 | 170 | 135 | 125 | 115 | 125 | 100 |
50,0 | 215 | 185 | 170 | 150 | 160 | 135 |
70,0 | 270 | 225 | 210 | 185 | 195 | 175 |
95,0 | 330 | 275 | 255 | 225 | 245 | 215 |
120,0 | 385 | 315 | 290 | 260 | 295 | 250 |
150,0 | 440 | 360 | 330 | - | - | - |
185,0 | 510 | - | - | - | - | - |
240,0 | 605 | - | - | - | - | - |
300,0 | 695 | - | - | - | - | - |
400,0 | 830 | - | - | - | - | - |
Сечение токопроводящей жилы, мм2 | открыто (в лотке) | 1 + 1 (два 1ж) | 1 + 1 + 1 (три 1ж) | 1 + 1 + 1 + 1 (четыре 1ж) | 1 * 2 (один 2ж) | 1 * 3 (один 3ж) |
Токовые нагрузки А проводов, проложенных в одной трубе (коробе, пучке) |
ПУЭ, Таблица 1. | ||||||
Сечение токопроводящей жилы, мм2 | Токовые нагрузки А проводов, проложенных в одной трубе (коробе, пучке) | |||||
открыто (в лотке) | 1 + 1 (два 1ж) | 1 + 1 + 1 (три 1ж) | 1 + 1 + 1 + 1 (четыре 1ж) | 1*2 (один 2ж) | 1*3 (один 3ж) | |
2 | 21 | 19 | 18 | 15 | 17 | 14 |
2,5 | 24 | 20 | 19 | 19 | 19 | 16 |
3 | 27 | 24 | 22 | 21 | 22 | 18 |
4 | 32 | 28 | 28 | 23 | 25 | 21 |
5 | 36 | 32 | 30 | 27 | 28 | 24 |
6 | 39 | 36 | 32 | 30 | 31 | 26 |
8 | 46 | 43 | 40 | 37 | 38 | 32 |
10 | 60 | 50 | 47 | 39 | 42 | 38 |
16 | 75 | 60 | 60 | 55 | 60 | 55 |
25 | 105 | 85 | 80 | 70 | 75 | 65 |
35 | 130 | 100 | 95 | 85 | 95 | 75 |
50 | 165 | 140 | 130 | 120 | 125 | 105 |
70 | 210 | 175 | 165 | 140 | 150 | 135 |
95 | 255 | 215 | 200 | 175 | 190 | 165 |
120 | 295 | 245 | 220 | 200 | 230 | 190 |
150 | 340 | 275 | 255 | - | - | - |
185 | 390 | - | - | - | - | - |
240 | 465 | - | - | - | - | - |
300 | 535 | - | - | - | - | - |
400 | 645 | - | - | - | - | - |
Сечение токопроводящей жилы, мм2 | открыто (в лотке) | 1 + 1 (два 1ж) | 1 + 1 + 1 (три 1ж) | 1 + 1 + 1 + 1 (четыре 1ж) | 1 * 2 (один 2ж) | 1 * 3 (один 3ж) |
Токовые нагрузки А проводов, проложенных в одной трубе (коробе, пучке) |
ПУЭ, Таблица 1. | |||||
Сечение токопроводящей жилы, мм2 | Ток *, А, для проводов и кабелей | ||||
одножильных | двухжильных | трехжильных | |||
при прокладке | |||||
в воздухе | в воздухе | в земле | в воздухе | в земле | |
1,5 | 23 | 19 | 33 | 19 | 27 |
2,5 | 30 | 27 | 44 | 25 | 38 |
4 | 41 | 38 | 55 | 35 | 49 |
6 | 50 | 50 | 70 | 42 | 60 |
10 | 80 | 70 | 105 | 55 | 90 |
16 | 100 | 90 | 135 | 75 | 115 |
25 | 140 | 115 | 175 | 95 | 150 |
35 | 170 | 140 | 210 | 120 | 180 |
50 | 215 | 175 | 265 | 145 | 225 |
70 | 270 | 215 | 320 | 180 | 275 |
95 | 325 | 260 | 385 | 220 | 330 |
120 | 385 | 300 | 445 | 260 | 385 |
150 | 440 | 350 | 505 | 305 | 435 |
185 | 510 | 405 | 570 | 350 | 500 |
240 | 605 | - | - | - | - |
ПУЭ, Таблица 1. | |||||
Сечение токопроводящей жилы, мм2 | Ток *, А, для проводов и кабелей | ||||
одножильных | двухжильных | трехжильных | |||
при прокладке | |||||
в воздухе | в воздухе | в земле | в воздухе | в земле | |
2,5 | 23 | 21 | 34 | 19 | 29 |
4 | 31 | 29 | 42 | 27 | 38 |
6 | 38 | 38 | 55 | 32 | 46 |
10 | 60 | 55 | 80 | 42 | 70 |
16 | 75 | 70 | 105 | 60 | 90 |
25 | 105 | 90 | 135 | 75 | 115 |
35 | 130 | 105 | 160 | 90 | 140 |
50 | 165 | 135 | 205 | 110 | 175 |
70 | 210 | 165 | 245 | 140 | 210 |
95 | 250 | 200 | 295 | 170 | 255 |
120 | 295 | 230 | 340 | 200 | 295 |
150 | 340 | 270 | 390 | 235 | 335 |
185 | 390 | 310 | 440 | 270 | 385 |
240 | 465 | - | - | - | - |
ПУЭ, Таблица 1. | |||
Сечение токопроводящей жилы, мм2 | Ток *, А, для проводов и кабелей | ||
одножильных | двухжильных | трехжильных | |
0.5 | - | 12 | - |
0.75 | - | 16 | 14 |
1 | - | 18 | 16 |
1.5 | - | 23 | 20 |
2.5 | 40 | 33 | 28 |
4 | 50 | 43 | 36 |
6 | 65 | 55 | 45 |
10 | 90 | 75 | 60 |
16 | 120 | 95 | 80 |
25 | 160 | 125 | 105 |
35 | 190 | 150 | 130 |
50 | 235 | 185 | 160 |
70 | 290 | 235 | 200 |
ГОСТ 16442-80, Таблица 23. | ||||||
Сечение токопроводящей жилы, мм2 | Ток *, А, для проводов и кабелей | |||||
одножильных | двухжильных | трехжильных | ||||
при прокладке | ||||||
в воздухе | в земле | в воздухе | в земле | в воздухе | в земле | |
1,5 | 29 | 32 | 24 | 33 | 21 | 28 |
2,5 | 40 | 42 | 33 | 44 | 28 | 37 |
4 | 53 | 54 | 44 | 56 | 37 | 48 |
6 | 67 | 67 | 56 | 71 | 49 | 58 |
10 | 91 | 89 | 76 | 94 | 66 | 77 |
16 | 121 | 116 | 101 | 123 | 87 | 100 |
25 | 160 | 148 | 134 | 157 | 115 | 130 |
35 | 197 | 178 | 166 | 190 | 141 | 158 |
50 | 247 | 217 | 208 | 230 | 177 | 192 |
70 | 318 | 265 | - | - | 226 | 237 |
95 | 386 | 314 | - | - | 274 | 280 |
120 | 450 | 358 | - | - | 321 | 321 |
150 | 521 | 406 | - | - | 370 | 363 |
185 | 594 | 455 | - | - | 421 | 406 |
240 | 704 | 525 | - | - | 499 | 468 |
ГОСТ 16442-80, Таблица 24. | ||||||
Сечение токопроводящей жилы, мм2 | Ток *, А, для проводов и кабелей | |||||
одножильных | двухжильных | трехжильных | ||||
при прокладке | ||||||
в воздухе | в земле | в воздухе | в земле | в воздухе | в земле | |
2.5 | 30 | 32 | 25 | 33 | 51 | 28 |
4 | 40 | 41 | 34 | 43 | 29 | 37 |
6 | 51 | 52 | 43 | 54 | 37 | 44 |
10 | 69 | 68 | 58 | 72 | 50 | 59 |
16 | 93 | 83 | 77 | 94 | 67 | 77 |
25 | 122 | 113 | 103 | 120 | 88 | 100 |
35 | 151 | 136 | 127 | 145 | 106 | 121 |
50 | 189 | 166 | 159 | 176 | 136 | 147 |
70 | 233 | 200 | - | - | 167 | 178 |
95 | 284 | 237 | - | - | 204 | 212 |
120 | 330 | 269 | - | - | 236 | 241 |
150 | 380 | 305 | - | - | 273 | 278 |
185 | 436 | 343 | - | - | 313 | 308 |
240 | 515 | 396 | - | - | 369 | 355 |
Токи относятся к проводам и кабелям как с нулевой жилой, так и без нее. Сечения приняты из расчета нагрева жил до 65°С при температуре окружающей среды +25°С. При определении количества проводов, прокладываемых в одной трубе, нулевой рабочий провод четырехпроводной системы трехфазного тока (или заземляющий провод) в расчет не входит.
Токовые нагрузки для проводов, проложенных в лотках (не в пучках), такие же, как и для проводов, проложенных открыто.
Если количество одновременно нагруженных проводников, проложенных в трубах, коробах, а также в лотках пучками, будет более четырех, то сечение проводников нужно выбирать как для проводников, проложенных открыто, но с введением понижающих коэффициентов для тока: 0,68 при 5 и 6 проводниках, 0,63 - при 7-9, 0,6 - при 10-12.
Для облегчения выбора сечения и учета дополнительных условий можно воспользоваться формой "Расчет сечения провода по допустимому нагреву и допустимым потерям напряжения". Значения токов для малых сечений для медных проводников получен методом экстрапляции.
Расчет по экономическому критерию для конечных потребителей не производится.
Разделов
Таблица заголовков раздела объектного файла позволяет
найдите все разделы файла.
Таблица заголовка раздела представляет собой массив Elf32_Shdr
или Elf64_Shdr
структур
как описано ниже.
Индекс таблицы заголовков раздела является индексом в этом массиве.
Заголовок ELF e_shoff
член дает смещение в байтах от начала
файл в таблицу заголовков раздела.
e_shnum
обычно сообщает, сколько записей содержит таблица заголовков раздела. e_shentsize
дает размер каждой записи в байтах.
Если количество секций больше или равно
ШН_ЛОРЕСЕРВ
( 0xff00
), е_шнум
имеет значение SHN_UNDEF
( 0
) и
фактический номер таблицы заголовка раздела
записей содержится в поле sh_size
заголовок раздела с индексом 0
(в противном случае элемент sh_size
начальной записи
содержит 0
).
Некоторые индексы таблицы заголовков разделов зарезервированы в контекстах
где размер индекса ограничен, например st_shndx
элемент записи таблицы символов и e_shnum
и
e_shstrndx
элемента заголовка ELF.
В таких контекстах зарезервированные значения не представляют фактические
разделы в объектном файле. Также в таких контекстах побег
значение указывает, что фактический раздел
index можно найти в другом месте, в более крупном поле.
Рисунок 4-7: Указатели специальных разделов
Имя | Значение |
---|---|
ШН_УНДЕФ |
0 |
SHN_LORESERVE |
0xff00 |
ШН_ЛОПРОК |
0xff00 |
SHN_HIPROC |
0xff1f |
ШН_ЛООС |
0xff20 |
ШН_ХИОС |
0xff3f |
ШН_АБС |
0xfff1 |
SHN_COMMON |
0xfff2 |
SHN_XINDEX |
0xffff |
SHN_HIRESERVE |
0xffff |
-
ШН_УНДЕФ
-
Это значение отмечает неопределенное, отсутствующее, нерелевантное или
в противном случае бессмысленная ссылка на раздел.
Например, символ `` определен '' относительно номера раздела
SHN_UNDEF
- неопределенный символ.
Хотя индекс 0 зарезервирован как неопределенное значение, таблица заголовков раздела содержит запись для индекса 0. Если
е_шнум
член заголовка ELF говорит, что файл имеет 6 записей
в таблице заголовков раздела они имеют индексы от 0 до 5.
Содержимое начальной записи указано ниже в этом
раздел.
-
SHN_LORESERVE
- Это значение определяет нижнюю границу диапазон зарезервированных индексов.
-
SHN_LOPROC
-SHN_HIPROC
- Значения в этом инклюзивном диапазоне зарезервированы для семантики, зависящей от процессора.
-
SHN_LOOS
–SHN_HIOS
- Значения в этом инклюзивном диапазоне зарезервированы для семантики операционной системы.
-
ШН_АБС
-
Это значение указывает абсолютные значения для соответствующей ссылки.
Например, символы, определенные относительно номера раздела
SHN_ABS
имеют абсолютные значения и не зависят от перемещения. -
SHN_COMMON
-
Символы, определенные относительно этого раздела, являются общими символами,
такие как FORTRAN
ОБЩИЙ
или нераспределенные внешние переменные C. -
SHN_XINDEX
- Это значение является escape-значением. Это указывает на то, что фактический индекс заголовка раздела слишком велик для размещения в содержащем поле и должен быть найден в другом месте (зависит от структуры, в которой он появляется).
-
SHN_HIRESERVE
-
Это значение определяет верхнюю границу
диапазон зарезервированных индексов.Система резервирует индексы между
SHN_LORESERVE
иSHN_HIRESERVE
, включительно; значения не ссылаются на таблицу заголовков раздела. Таблица заголовка раздела не содержат записи для зарезервированных индексов.
Разделы содержат всю информацию в объектном файле кроме заголовка ELF, таблица заголовка программы, и таблица заголовков раздела. Кроме того, разделы объектных файлов удовлетворяют ряду условий.
- В каждом разделе объектного файла есть ровно один заголовок раздела с его описанием.Могут существовать заголовки разделов, в которых нет раздела.
- Каждый раздел занимает один непрерывный (возможно, пустой) последовательность байтов в файле.
- Разделы файла не могут перекрываться. Ни один байт в файле не находится более чем в одном разделе.
- В объектном файле может быть неактивное пространство. Различные заголовки и разделы могут не `` покрыть '' каждый байт объектного файла. Содержание неактивных данных не указано.
Рисунок 4-8: Заголовок раздела
typedef struct { Elf32_Word sh_name; Elf32_Word sh_type; Elf32_Word sh_flags; Elf32_Addr sh_addr; Elf32_Off sh_offset; Elf32_Word sh_size; Elf32_Word sh_link; Elf32_Word sh_info; Elf32_Word sh_addralign; Elf32_Word sh_entsize; } Elf32_Shdr; typedef struct { Elf64_Word sh_name; Elf64_Word sh_type; Elf64_Xword sh_flags; Elf64_Addr sh_addr; Elf64_Off sh_offset; Elf64_Xword sh_size; Elf64_Word sh_link; Elf64_Word sh_info; Elf64_Xword sh_addralign; Elf64_Xword sh_entsize; } Elf64_Shdr;
-
sh_name
- Этот член указывает имя раздела.Его значение является индексом в заголовке раздела. раздел таблицы строк [см. «Таблица строк» ниже], указание местоположения строки с завершающим нулем.
-
ш_тип
- Этот член классифицирует содержимое и семантику раздела. Появятся типы разделов и их описания. ниже.
-
sh_flags
- Разделы поддерживают 1-битные флаги, которые описывают разные атрибуты. Появляются определения флагов ниже.
-
ш_аддр
- Если раздел появится в образе памяти процесса, этот член дает адрес, по которому байт должен находиться.В противном случае член содержит 0.
-
ш_офсет
-
Значение этого члена дает смещение в байтах от начала файла
к первому байту в разделе.
Односекционный тип,
SHT_NOBITS
описанный ниже, не занимает места в файле, и егоsh_offset
член определяет концептуальное размещение в файле. -
ш_размер
-
Этот член указывает размер раздела в байтах.
Если тип раздела не
SHT_NOBITS
, секция занимаетsh_size
байтов в файле.Секция типаSHT_NOBITS
может иметь ненулевой размер, но не занимает места в файле. -
sh_ссылка
- Этот член содержит ссылку индекса таблицы заголовков раздела, чья интерпретация зависит от типа раздела. Таблица ниже описывает ценности.
-
sh_info
-
Этот участник содержит дополнительную информацию,
чья интерпретация зависит от типа раздела.
Таблица ниже
описывает ценности. Если поле
sh_flags
для этого заголовок раздела включает атрибутSHF_INFO_LINK
, тогда этот элемент представляет индекс таблицы заголовка раздела. -
sh_addralign
-
Некоторые разделы имеют ограничения по выравниванию адресов.
Например, если в разделе содержится двойное слово,
система должна обеспечивать выравнивание двойных слов для всего раздела.
Значение
sh_addr
должно быть конгруэнтно 0 по модулю значенияsh_addralign
. В настоящее время разрешены только 0 и положительные целые степени двойки. Значения 0 и 1 означают, что секция не имеет ограничений выравнивания. -
размер
- В некоторых разделах есть таблица записей фиксированного размера, например, таблица символов.Для такого раздела этот член указывает размер каждой записи в байтах. Член содержит 0, если в разделе нет таблицы записей фиксированного размера.
Элемент sh_type заголовка раздела определяет семантику раздела.
Рисунок 4-9: Типы секций,
sh_type
Имя | Значение |
---|---|
SHT_NULL |
0 |
SHT_PROGBITS |
1 |
SHT_SYMTAB |
2 |
SHT_STRTAB |
3 |
SHT_RELA |
4 |
SHT_HASH |
5 |
SHT_DYNAMIC |
6 |
SHT_NOTE |
7 |
SHT_NOBITS |
8 |
SHT_REL |
9 |
ШТ_ШЛИБ |
10 |
SHT_DYNSYM |
11 |
SHT_INIT_ARRAY |
14 |
SHT_FINI_ARRAY |
15 |
SHT_PREINIT_ARRAY |
16 |
SHT_GROUP |
17 |
SHT_SYMTAB_SHNDX |
18 |
SHT_LOOS |
0x60000000 |
SHT_HIOS |
0x6fffffff |
SHT_LOPROC |
0x70000000 |
SHT_HIPROC |
0x7fffffff |
SHT_LOUSER |
0x80000000 |
SHT_HIUSER |
0xffffffff |
-
SHT_NULL
- Это значение отмечает заголовок раздела как неактивный; у него нет связанного раздела.Остальные элементы заголовка раздела имеют неопределенные значения.
-
SHT_PROGBITS
- Раздел содержит информацию, определенную программой, формат и значение которых определяются исключительно программой.
-
SHT_SYMTAB
иSHT_DYNSYM
-
Эти разделы содержат таблицу символов.
В настоящее время объектный файл может иметь только один раздел каждого типа,
но в будущем это ограничение может быть ослаблено.
Обычно
SHT_SYMTAB
предоставляет символы для редактирования ссылок, хотя также может быть используется для динамического связывания.Как полная таблица символов, она может содержать много ненужных символов. для динамического связывания. Следовательно, объектный файл может также содержатьSHT_DYNSYM
раздел, содержащий минимальный набор символов динамического связывания, для экономии места. См. Ниже `` Таблицу символов ''. для подробностей. -
SHT_STRTAB
- Раздел содержит таблицу строк. Объектный файл может иметь несколько разделов таблицы строк. См. Раздел `` Таблица строк '' подробности ниже.
-
SHT_RELA
-
Раздел содержит записи о перемещении
с явными дополнениями, такими как тип
Elf32_Rela
для 32-битного класса объектных файлов или введитеElf64_Rela
для 64-битного класса объектных файлов.В объектном файле может быть несколько разделов перемещения. `` Переезд '' подробности ниже. -
SHT_HASH
- Раздел содержит хеш-таблицу символов. В настоящее время объектный файл может иметь только одну хеш-таблицу, но в будущем это ограничение может быть ослаблено. Видеть `` Хеш-таблица '' в Главе 5 для подробностей.
-
SHT_DYNAMIC
- В разделе содержится информация для динамического связывания. В настоящее время объектный файл может иметь только один динамический раздел, но в будущем это ограничение может быть ослаблено.Видеть `` Динамический раздел '' в главе 5.
-
SHT_NOTE
- В этом разделе содержится информация, которая каким-то образом отмечает файл. Видеть `` Раздел примечаний '' в главе 5 для подробностей.
-
SHT_NOBITS
-
Раздел этого типа не занимает места в файле, но
в остальном напоминает
SHT_PROGBITS
. Хотя этот раздел не содержит байтов,sh_offset
член содержит концептуальное смещение файла. -
SHT_REL
-
Раздел содержит записи о перемещении
без явных дополнений, таких как тип
Elf32_Rel
для 32-битного класса объектных файлов или типElf64_Rel
для 64-битного класса объектных файлов.В объектном файле может быть несколько разделов перемещения. См. Раздел `` Переезд '' подробности ниже. -
ШТ_ШЛИБ
- Этот тип раздела зарезервирован, но его семантика не указана.
-
SHT_INIT_ARRAY
- Этот раздел содержит массив указателей на функции инициализации, как описано в разделе `` Инициализация и Функции завершения »в главе 5. Каждый указатель в массиве рассматривается как процедура без параметров с недействительным возвратом.
-
SHT_FINI_ARRAY
- Этот раздел содержит массив указателей на функции завершения, как описано в разделе `` Инициализация и Функции завершения '' в главе 5.Каждый указатель в массиве рассматривается как процедура без параметров с недействительным возвратом.
-
SHT_PREINIT_ARRAY
- Этот раздел содержит массив указателей на функции, которые вызывается перед всеми другими функциями инициализации, как описано в разделе `` Инициализация и Функции завершения »в главе 5. Каждый указатель в массиве рассматривается как процедура без параметров с недействительным возвратом.
-
SHT_GROUP
-
Этот раздел определяет группу разделов.Группа раздела
это набор разделов, которые связаны и которые необходимо обрабатывать
специально компоновщиком (подробнее см. ниже
Детали). Разделы типа
SHT_GROUP
могут появляться только в перемещаемых объектах (объекты с заголовком ELFe_type
элемент установлен наET_REL
). Запись в таблице заголовков раздела для группы раздел должен появиться в таблице заголовка раздела перед записями для любого из разделов, которые являются членами группа. -
SHT_SYMTAB_SHNDX
-
Этот раздел связан с разделом типа
SHT_SYMTAB
и требуется, если имеется ссылка на какой-либо из индексов заголовка раздела по этой таблице символов содержат управляющее значениеSHN_XINDEX
.Раздел представляет собой массив иззначений Elf32_Word
. Каждому значению соответствует один к одному с записью в таблице символов. и появляются в том же порядке, что и эти записи. Значения представляют индексы заголовков разделов, по которым записи таблицы символов определены. Только если поле соответствующей записи таблицы символовst_shndx
содержит escape-значениеSHN_XINDEX
будет ли соответствующийElf32_Word
содержать фактический индекс заголовка раздела; в противном случае запись должна бытьSHN_UNDEF
(0
). -
SHT_LOOS
-SHT_HIOS
- Значения в этом инклюзивном диапазоне зарезервированы для семантики операционной системы.
-
SHT_LOPROC
-SHT_HIPROC
- Значения в этом инклюзивном диапазоне зарезервированы для семантики, зависящей от процессора.
-
SHT_LOUSER
- Это значение определяет нижнюю границу диапазона индексы, зарезервированные для прикладных программ.
-
SHT_HIUSER
-
Это значение определяет верхнюю границу диапазона
индексы, зарезервированные для прикладных программ.Типы секций от
SHT_LOUSER
доSHT_HIUSER
может использоваться приложением без конфликта с текущие или будущие типы разделов, определенные системой.
Остальные значения типа раздела зарезервированы.
Как упоминалось ранее, заголовок раздела для индекса 0 ( SHN_UNDEF
)
существует, даже если указатель отмечает неопределенные ссылки на разделы.
Эта запись содержит следующее.
Рисунок 4-10: Запись в таблице заголовка раздела: Индекс 0
Имя | Значение | Примечание |
---|---|---|
sh_name |
0 |
Без названия |
ш_тип |
SHT_NULL |
Неактивно |
sh_flags |
0 |
Нет флагов |
sh_addr |
0 |
Без адреса |
sh_offset |
0 |
Нет смещения |
ш_размер |
Не указано | Если ненулевое, фактическое количество записей заголовка раздела |
ш_ссылка |
Не указано | Если не ноль, индекс раздела таблицы строки заголовка раздела |
sh_info |
0 |
Нет дополнительной информации |
sh_addralign |
0 |
Нет центровки |
размер |
0 |
Нет записей |
sh_flags
заголовка раздела
член содержит 1-битные флаги, которые описывают атрибуты раздела.Определенные значения представлены в следующей таблице;
другие значения зарезервированы.
Рисунок 4-11: Флаги атрибутов раздела
Имя | Значение |
---|---|
SHF_WRITE |
0x1 |
SHF_ALLOC |
0x2 |
SHF_EXECINSTR |
0x4 |
SHF_MERGE |
0x10 |
SHF_STRINGS |
0x20 |
SHF_INFO_LINK |
0x40 |
SHF_LINK_ORDER |
0x80 |
SHF_OS_NONCONFORMING |
0x100 |
SHF_GROUP |
0x200 |
SHF_TLS |
0x400 |
ШФ_МАСКОС |
0x0ff00000 |
ШФ_МАСКПРОК |
0xf0000000 |
Если бит флага установлен в sh_flags
,
для раздела атрибут включен.В противном случае атрибут отключен или не применяется.
Неопределенные атрибуты устанавливаются на ноль.
-
SHF_WRITE
- Раздел содержит данные, которые должны быть доступны для записи во время выполнение процесса.
-
SHF_ALLOC
- Раздел занимает память во время выполнения процесса. Некоторые разделы управления не хранятся в образе памяти объектного файла; этот атрибут отключен для этих разделов.
-
SHF_EXECINSTR
- Раздел содержит исполняемые машинные инструкции.
-
SHF_MERGE
-
Данные в разделе могут быть объединены, чтобы исключить дублирование.
Если также не установлен флаг
SHF_STRINGS
, элементы данных в разделе имеют одинаковый размер. Размер каждого элемента указан в разделе поле заголовкаsh_entsize
. Если также установлен флагSHF_STRINGS
, элементы данных состоят из символьных строк с завершающим нулем. Размер каждого символа указан в разделе поле заголовкаsh_entsize
.Каждый элемент в разделе сравнивается с другими элементами в разделах с одинаковым названием, типом и флагами. Элементы, которые будут иметь одинаковые значения во время выполнения программы могут быть объединены. Перемещения, ссылающиеся на элементы таких разделов, должны быть разрешены в объединенные местоположения ссылочных значений. Обратите внимание, что любые перемещаемые значения, включая значения, которые могут привести к перемещению во время выполнения, должны быть проанализированы, чтобы определить, действительно ли значения времени выполнения быть идентичным. Объектный файл, соответствующий ABI, может не зависеть на конкретных объединяемых элементах и ABI-совместимом редактор ссылок может решить не объединять определенные элементы.
-
SHF_STRINGS
-
Элементы данных в разделе состоят из символа с завершающим нулем.
струны. Размер каждого символа указан в разделе
поле заголовка
sh_entsize
. -
SHF_INFO_LINK
-
Поле
sh_info
заголовка этого раздела содержит раздел индекс таблицы заголовков. -
SHF_LINK_ORDER
-
Этот флаг добавляет специальные требования к порядку размещения редакторов ссылок.Требования применяются, если
sh_link
поле ссылки заголовка этого раздела другой раздел (связанный с разделом). Если этот раздел совмещен с другими разделы в выходном файле, он должен находиться в том же относительный порядок по отношению к этим разделам, так как связанный раздел появляется по отношению к разделам, с которыми совмещены связанные разделы.
Типичное использование этого флага - создание таблицы, которая ссылается на текст или разделы данных в адресном порядке.
-
SHF_OS_NONCONFORMING
-
Этот раздел требует специальной обработки для ОС
(помимо стандартных правил связывания)
чтобы избежать некорректного поведения.Если в этом разделе указано значение
sh_type
или содержитsh_flags
бит в диапазонах, зависящих от ОС для эти поля, и редактор ссылок, обрабатывающий этот раздел, не распознавать эти значения, тогда редактор ссылок должен отклонить объектный файл, содержащий этот раздел, с ошибкой. -
SHF_GROUP
-
Этот раздел является членом (возможно, единственным) группы разделов.
На раздел должен ссылаться раздел типа
SHT_GROUP
.ФлагSHF_GROUP
может быть установлен только для разделов, содержащих в перемещаемых объектах (объекты с заголовком ELFe_type
элемент установлен наET_REL
). Подробнее см. Ниже. -
SHF_TLS
- Этот раздел содержит Thread-Local Storage , означает, что каждый отдельный поток выполнения имеет свой собственный отдельный экземпляр этих данных. Реализации не должны поддерживать этот флаг.
-
ШФ_МАСКОС
- Все биты, включенные в эту маску зарезервированы для семантики операционной системы.
-
ШФ_МАСКПРОК
- Все биты, включенные в эту маску зарезервированы для семантики, зависящей от процессора. Если значения указаны, приложение к процессору объясняет их.
Два члена в заголовке раздела,
sh_link
и sh_info
,
содержат специальную информацию в зависимости от типа раздела.
Рисунок 4-12:
sh_link
и sh_info
Интерпретация
ш_тип |
ш_ссылка |
sh_info |
---|---|---|
SHT_DYNAMIC |
Индекс заголовка раздела таблица строк, используемая записи в разделе. | 0 |
SHT_HASH |
Индекс заголовка раздела таблица символов, к которой применяется хеш-таблица. | 0 |
SHT_REL SHT_RELA |
Индекс заголовка раздела связанную таблицу символов. | Индекс заголовка раздела раздел, к которому применяется переезд. |
SHT_SYMTAB SHT_DYNSYM |
Индекс заголовка раздела связанная таблица строк. | На единицу больше, чем индекс таблицы символов последнего локального
символ (привязка STB_LOCAL ). |
SHT_GROUP |
Индекс заголовка раздела связанную таблицу символов. | Индекс таблицы символов записи в связанная таблица символов. Имя указанной таблицы символов запись обеспечивает подпись для группы разделов. | SHT_SYMTAB_SHNDX |
Индекс заголовка раздела соответствующий раздел таблицы символов. | 0 |
Правила связывания неопознанных разделов
Если редактор ссылок встречает разделы, заголовки которых содержат специфические для ОС значения, которые он не распознает в sh_type
или полей sh_flags
, редактор ссылок должен объединить эти
разделы, как описано ниже.
Если sh_flags раздела
бит включают атрибут
SHF_OS_NONCONFORMING
, то раздел требует
специальные знания для правильной обработки, а редактор ссылок должен
отклонить объект, содержащий раздел с ошибкой.
Нераспознанные разделы, у которых нет
SHF_OS_NONCONFORMING
атрибута, объединяются в двухфазный
процесс. Поскольку редактор ссылок объединяет разделы с помощью этого процесса,
он должен соблюдать ограничения выравнивания
входные разделы (утверждается полем sh_addralign
),
заполнение разделов нулевыми байтами, если необходимо, и создание
комбинация с максимальным ограничением выравнивания его
компонентные входные секции.
-
На первом этапе введите разделы, совпадающие по названию, введите
флаги атрибутов должны быть объединены в отдельные разделы.Порядок конкатенации должен удовлетворять требованиям
любые известные атрибуты входного раздела (например,
SHF_MERGE
иSHF_LINK_ORDER
). Когда нет других ограничений, разделы должны выводиться в порядке ввода. - На втором этапе разделы должны быть отнесены к сегментам или другие единицы на основе их флагов атрибутов. Разделы каждого конкретного нераспознанный тип должен быть присвоен тому же объекту, если только предотвращается несовместимостью флагов, а внутри юнита разделы одного нераспознанного типа должны быть помещены вместе если возможно.
Должна применяться обработка, не зависящая от ОС (например, перемещение) к нераспознанным типам разделов. Таблица заголовка раздела вывода, если присутствует, должен содержать записи для неизвестных разделов. Все флажки нераспознанных атрибутов раздела должны быть удалены.
Рекомендуется, чтобы редакторы ссылок следовали той же двухэтапной подход к заказу, описанный выше, при связывании разделов известные типы. Отступы между такими разделами могут иметь значения отличное от нуля, где это необходимо.
Группы разделов
Некоторые разделы входят во взаимосвязанные группы. Например, вне очереди может потребоваться определение встроенной функции в дополнение к раздел, содержащий его исполняемые инструкции, данные только для чтения раздел, содержащий ссылки на литералы, одну или несколько отладочных сведений разделы и другие информационные разделы. Кроме того, может быть внутренние ссылки между этими разделами, которые не имеют смысла если один из разделов был удален или заменен дубликатом из другой объект.Следовательно, такие группы должны быть включены или не включены в связанный объект как единое целое. Раздел не может быть членом более чем одной группы.
Раздел типа SHT_GROUP
определяет такую группировку
разделов. Имя символа из одного из содержащих
таблицы символов объекта предоставляют подпись для группы разделов.
В заголовке раздела SHT_GROUP
указывается
запись идентифицирующего символа, как описано выше:
элемент sh_link
содержит индекс заголовка раздела
раздела таблицы символов, содержащего запись.Элемент sh_info
содержит индекс таблицы символов
идентифицирующая запись. sh_flags
элемент заголовка раздела содержит 0
.
Название раздела ( sh_name
) не указано.
Указанный символ подписи не ограничен. Раздел, содержащий его таблицу символов, не обязательно должен быть членом группы, например.
Данные раздела SHT_GROUP
раздела - это массив
из Elf32_Word
записей.Первая запись - это слово-флаг.
Остальные записи представляют собой последовательность индексов заголовков разделов.
В настоящее время определены следующие флаги:
Рисунок 4-13: Флаги групп разделов
Имя | Значение |
---|---|
GRP_COMDAT |
0x1 |
ГРП_МАСКОС |
0x0ff00000 |
GRP_MASKPROC |
0xf0000000 |
-
GRP_COMDAT
- Это группа COMDAT.Может дублировать другую группу COMDAT в другом объектном файле, где дублирование определяется как наличие такая же групповая подпись. В таких случаях только один из повторяющиеся группы могут быть сохранены компоновщиком, и члены остальных групп должны быть отброшены.
-
ГРП_МАСКОС
- Все биты, включенные в эту маску зарезервированы для семантики операционной системы.
-
GRP_MASKPROC
- Все биты, включенные в эту маску зарезервированы для семантики, зависящей от процессора.Если значения указаны, приложение к процессору объясняет их.
Индексы заголовка раздела в разделе SHT_GROUP
определить разделы, составляющие группу. Каждый такой раздел
должен иметь флаг SHF_GROUP
, установленный в его sh_flags
элемент заголовка раздела. Если компоновщик решит удалить раздел
group, он должен удалить всех членов группы.
Это требование не подразумевает, что особый случай поведения например, удаление отладочной информации требует удаления разделов к которому относится эта информация, даже если они являются частью одного и того же группа.
Чтобы упростить удаление группы, не оставляя болтающихся ссылок и с минимальной обработкой таблицы символов, необходимо соблюдать следующие правила:
-
Запись таблицы символов с
STB_GLOBAL
илиSTB_WEAK
привязка, которая определяется относительно одного из разделов группы, и это содержится в разделе таблицы символов это не часть группы, должен быть преобразован в неопределенный символ (индекс его раздела необходимо изменить наSHN_UNDEF
) если исключены члены группы.Разрешены ссылки на эту запись таблицы символов извне группы. -
Запись таблицы символов с привязкой
STB_LOCAL
который определяется относительно одного из разделов группы, и это содержится в разделе таблицы символов это не часть группы, должен быть отброшен, если отброшены члены группы. Ссылки на эту запись таблицы символов извне группы не допускаются. - Неопределенный символ, на который есть ссылка только из одного или нескольких разделов которые являются частью определенной группы, и это содержится в разделе таблицы символов это не часть группы, не удаляется при удалении членов группы.Другими словами, неопределенный символ не удаляется даже если не осталось ссылок на этот символ.
-
Несимвольные ссылки на разделы, содержащие
группа вне группы, например, использование группы
индекс заголовка раздела члена в
sh_link
илиsh_info
член.
Особые разделы
Различные разделы содержат программную и управляющую информацию.Следующая таблица показывает разделы, которые используются системой и иметь указанные типы и атрибуты.
Рисунок 4-14: Особые разделы
Имя | Тип | Атрибуты |
---|---|---|
.bss |
SHT_NOBITS |
SHF_ALLOC + SHF_WRITE |
. Комментарий |
SHT_PROGBITS |
нет |
. Данные |
SHT_PROGBITS |
SHF_ALLOC + SHF_WRITE |
.данные1 |
SHT_PROGBITS |
SHF_ALLOC + SHF_WRITE |
. Отладка |
SHT_PROGBITS |
нет |
. Динамический |
SHT_DYNAMIC |
см. Ниже |
.dynstr |
SHT_STRTAB |
SHF_ALLOC |
.динсим |
SHT_DYNSYM |
SHF_ALLOC |
.fini |
SHT_PROGBITS |
SHF_ALLOC + SHF_EXECINSTR |
.fini_array |
SHT_FINI_ARRAY |
SHF_ALLOC + SHF_WRITE |
.got |
SHT_PROGBITS |
см. Ниже |
.хэш |
SHT_HASH |
SHF_ALLOC |
.init |
SHT_PROGBITS |
SHF_ALLOC + SHF_EXECINSTR |
.init_array |
SHT_INIT_ARRAY |
SHF_ALLOC + SHF_WRITE |
. Интерп |
SHT_PROGBITS |
см. Ниже |
.линия |
SHT_PROGBITS |
нет |
. Примечание |
SHT_NOTE |
нет |
.plt |
SHT_PROGBITS |
см. Ниже |
.preinit_array |
SHT_PREINIT_ARRAY |
SHF_ALLOC + SHF_WRITE |
.rel наименование |
SHT_REL |
см. Ниже |
.rela название |
ШТ_РЕЛА |
см. Ниже |
.rodata |
SHT_PROGBITS |
SHF_ALLOC |
.rodata1 |
SHT_PROGBITS |
SHF_ALLOC |
.шстртаб |
SHT_STRTAB |
нет |
.strtab |
SHT_STRTAB |
см. Ниже |
.symtab |
SHT_SYMTAB |
см. Ниже |
.symtab_shndx |
SHT_SYMTAB_SHNDX |
см. Ниже |
.tbss |
SHT_NOBITS |
SHF_ALLOC + SHF_WRITE + SHF_TLS |
.tdata |
SHT_PROGBITS |
SHF_ALLOC + SHF_WRITE + SHF_TLS |
.tdata1 |
SHT_PROGBITS |
SHF_ALLOC + SHF_WRITE + SHF_TLS |
. Текст |
SHT_PROGBITS |
SHF_ALLOC + SHF_EXECINSTR |
-
.bss
-
В этом разделе хранятся неинициализированные данные, которые
к образу памяти программы.По определению система инициализирует данные нулями
когда программа начинает работать.
Раздел не занимает файлового пространства, на что указывает тип раздела,
SHT_NOBITS
. -
. Комментарий
- В этом разделе содержится информация для контроля версий.
-
.data
и.data1
- Эти разделы содержат инициализированные данные, которые вносят к образу памяти программы.
-
. Отладка
-
В этом разделе содержится информация для символьной отладки.Содержание не указано. Все названия разделов с
префикс
.debug
зарезервированы для будущего использования в ABI. -
. Динамический
-
В этом разделе содержится информация о динамической компоновке.
Атрибуты раздела будут включать бит
SHF_ALLOC
. Установлен ли битSHF_WRITE
, зависит от процессора. См. Главу 5 для получения дополнительной информации. -
.dynstr
- В этом разделе содержатся строки, необходимые для динамического связывания, чаще всего струны которые представляют имена, связанные с записями таблицы символов.См. Главу 5 для получения дополнительной информации.
-
.dynsym
- В этом разделе содержится таблица символов динамического связывания, как описано в `` Таблица символов ''. См. Главу 5 для получения дополнительной информации.
-
.fini
- В этом разделе содержатся исполняемые инструкции, которые к коду завершения процесса. То есть, когда программа завершается нормально, система организует выполнить код в этом разделе.
-
.fini_array
- В этом разделе содержится массив указателей функций, который способствует к одному массиву завершения для исполняемого файла или общего объект, содержащий раздел.
-
.got
- В этом разделе содержится глобальная таблица смещений. Смотрите `` Примеры кодирования '' в Главе 3, `` Особые разделы '' в Глава 4 и `` Таблица глобального смещения '' в главе 5 Дополнение к процессору для получения дополнительной информации.
-
.hash
- В этом разделе хранится хеш-таблица символов. Видеть `` Хеш-таблица '' в Главе 5 для получения дополнительной информации.
-
.init
-
В этом разделе содержатся исполняемые инструкции, которые
к коду инициализации процесса.Когда программа запускается, система организует
выполнить код в этом разделе перед вызовом
основная точка входа в программу (для программ на языке C -
main
). -
.init_array
- В этом разделе содержится массив указателей функций, который способствует в единый массив инициализации для исполняемого файла или общего объект, содержащий раздел.
-
.интерп
-
В этом разделе содержится путь к интерпретатору программы.
Если в файле есть загружаемый сегмент, включающий
перемещение, атрибуты разделов будут включать
SHF_ALLOC
бит; в противном случае этот бит будет отключен.См. Главу 5 для получения дополнительной информации. -
. Строка
- В этом разделе содержится информация о номерах строк для символических отладка, которая описывает соответствие между исходной программой и Машинный код. Содержание не указано.
-
. Примечание
- Этот раздел содержит информацию в формате, который `` Раздел примечаний ''. в главе 5 описывается.
-
.plt
- В этом разделе содержится таблица связывания процедур. См. Разделы `` Особые разделы '' в главе 4 и `` Связь процедур Таблица '' в главе 5 приложения к процессору для получения дополнительной информации Информация.
-
.preinit_array
- В этом разделе содержится массив указателей функций, который способствует в единый массив предварительной инициализации для исполняемого файла или общего объект, содержащий раздел.
-
.rel
имя и.rela
имя -
Эти разделы содержат информацию о перемещении, как описано в
`` Переезд ''.
Если в файле есть загружаемый сегмент, включающий
перемещение, атрибуты разделов будут включать
SHF_ALLOC
бит; в противном случае этот бит будет отключен.Условно наименование предоставляется разделом, к которому применяются перемещения. Таким образом, секция перемещения для.text
обычно имеет имя.rel.text
или.rela.text
. -
.rodata
и.rodata1
- Эти разделы содержат данные только для чтения, которые обычно вносят вклад в недоступный для записи сегмент в образе процесса. Видеть `` Заголовок программы '' в Главе 5 для получения дополнительной информации.
-
.shstrtab
- Этот раздел содержит названия разделов.
-
.strtab
-
В этом разделе содержатся строки, чаще всего строки
которые представляют имена, связанные с записями таблицы символов.
Если в файле есть загружаемый сегмент, включающий
таблица символьных строк, атрибуты раздела будут включать
SHF_ALLOC
немного; в противном случае этот бит будет отключен. -
.symtab
-
В этом разделе содержится таблица символов, так как
`` Таблица символов ''.
в этой главе описывается.
Если в файле есть загружаемый сегмент, включающий
таблица символов, атрибуты раздела будут включать
SHF_ALLOC
бит; в противном случае этот бит будет отключен. -
.symtab_shndx
-
В этом разделе содержится индекс раздела таблицы специальных символов.
array, как описано выше. Атрибуты раздела будут включать
SHF_ALLOC
бит, если соответствующая таблица символов раздел делает; в противном случае этот бит будет отключен. -
.tbss
-
В этом разделе содержатся неинициализированные локальные данные потока , которые вносят вклад
к образу памяти программы.
По определению,
система инициализирует данные нулями
когда данные создаются для каждого нового потока выполнения.Раздел не занимает файлового пространства, на что указывает тип раздела,
SHT_NOBITS
. Реализации не должны поддерживать локальное хранилище потока. -
.tdata
- Этот раздел содержит инициализированные локальные данные потока , которые вносят свой вклад к образу памяти программы. Копия его содержимого создается системой для каждого нового потока выполнения. Реализации не должны поддерживать локальное хранилище потока.
-
. Текст
- Этот раздел содержит `` текст '' или исполняемый файл инструкции программы.
Названия разделов с префиксом точки (.
)
зарезервированы для системы,
хотя приложения могут использовать эти разделы
если их существующие значения удовлетворительны.
Приложения могут использовать имена без префикса для
избегать конфликтов с системными разделами.
Формат объектного файла позволяет определять разделы, не
показано в предыдущем списке.
Объектный файл может иметь более одного раздела
с таким же названием.
Имена разделов зарезервированы для архитектуры процессора
формируются путем размещения аббревиатуры архитектуры
имя перед названием раздела.Название следует брать из
имена архитектуры, используемые для e_machine
.
Например .
FOO .psect
- это psect
раздел, определенный архитектурой FOO.
Существующие расширения названы своими историческими названиями.
.sdata |
.tdesc |
.sbss |
.лит4 |
.lit8 |
.reginfo |
.gptab |
.liblist |
. Конфликт |
Для получения информации о разделах, связанных с процессором, см. см. приложение ABI для нужного процессора.
© 1997, 1998, 1999, 2000, 2001 The Santa Cruz Operation, Inc. Все права защищены.
Оглавление диссертации
В оглавлении вы перечисляете главы и основные разделы своей диссертации вместе с номерами страниц.Четкая и хорошо отформатированная страница содержания важна, поскольку она указывает на качество бумаги.
Оглавление находится между рефератом и введением. Максимальная длина должна составлять две страницы.
Пример содержания
Ключевые особенности страницы содержания:
- Название страницы
- Очистить заголовки и субпозиции
- Номера страниц, указывающие, где в диссертации находится каждый раздел
Обратитесь в свой университет или другое учебное заведение, чтобы узнать, есть ли какие-либо особые требования к форматированию, которых вы должны придерживаться.
Что включить в оглавление
Все заголовки первого и второго уровней должны быть включены в оглавление. Заголовки третьего уровня являются необязательными, и их следует опускать, если вы выполняете более двух страниц.
Примеры заголовков первого уровня: Введение, Обзор литературы, Методология и Библиография. Подразделы каждого из них будут заголовками второго уровня, а последующие подразделы - заголовками третьего уровня.
Пример уровней заголовков
Уровень первый → Глава 3.Методология
Второй уровень → 3.1 Метод выборки
Третий уровень → 3.1.1 Набор участников
Обязательно используйте четкие заголовки во всем документе, чтобы по содержанию было легко ориентироваться. Помните, что читатель увидит оглавление перед прочтением и пониманием остальной части вашей диссертации.
Приложения и таблицы
Вы должны включить все приложения в ваше оглавление. Включите ли вы таблицы и рисунки, во многом зависит от того, сколько их в вашей диссертации.
Если имеется более трех рисунков и таблиц, вы можете рассмотреть возможность перечисления их на отдельной странице. В противном случае вы можете включить каждый из них в оглавление. Узнать больше о списках рисунков и таблиц.
Что не включать
Вы, , не включаете подтверждения , аннотация или само оглавление на странице содержания. Первые два расположены перед оглавлением, поэтому читатель уже видел эти страницы, когда достигал этого раздела.
Автоматическое создание оглавления в Word
Для автоматической вставки оглавления в Microsoft Word необходимо применить стили заголовков по всему документу.
После этого выполните следующие действия:
- Добавьте заголовок на страницу с содержанием. Обязательно следуйте стандартному формату для вашего стиля цитирования или руководству вашего университета / факультета.
- Поместите курсор в место, куда должно идти оглавление.
- В разделе ссылок на ленте найдите группу «Содержание».
- Щелкните стрелку рядом со значком «Оглавление» и выберите «Настраиваемое оглавление». Здесь вы можете выбрать, какие уровни заголовков вы хотите включить в оглавление, а также вручную настроить каждый уровень, нажав кнопку «Изменить».
- Когда вы будете готовы вставить оглавление, щелкните OK, и оно будет создано автоматически.
Применение стилей заголовков
Есть два шага для применения стилей заголовков в документе.Во-первых, вы должны установить стиль для каждого уровня заголовка. Во-вторых, вы должны назначить каждому заголовку уровень с помощью инструментов Word.
Создание стилей заголовков
Для настройки стилей заголовков следуйте этим инструкциям:
- Назначьте желаемый тип форматирования для каждого уровня заголовка. Например. если все заголовки первого уровня должны быть шрифтом Times New Roman, 12 pt и жирным шрифтом, добавьте это форматирование к заголовку первого уровня.
- Чтобы установить автоматическое форматирование для всех заголовков первого уровня, найдите раздел «Стили» на главной вкладке.
- Выделите заголовок первого уровня и затем щелкните правой кнопкой мыши стиль с надписью Заголовок 1.
- Выберите «Обновить заголовок 1 для соответствия выделенному».
Чтобы распределить форматирование для каждого заголовка по всему остальному документу, выделите нужные заголовки и щелкните стили, которые хотите применить.
Автоматическое обновление содержания
Мы советуем студентам обновить оглавление в качестве одного из заключительных заданий перед отправкой или печатью диссертации, поскольку текст может перемещаться во время процесса окончательной редакции, и очень важно, чтобы номера страниц были точными.
Word позволяет легко выполнять это обновление автоматически. Просто щелкните оглавление правой кнопкой мыши и выберите «Обновить поле». Вы можете обновить только номера страниц или обновить всю информацию в таблице.
Другие списки в вашей диссертации
В дополнение к оглавлению вы можете также включить в свою диссертацию список рисунков и таблиц, список сокращений и глоссарий. Для этого вы можете использовать следующие руководства:
37 таблиц CSS
Коллекция бесплатных таблиц HTML и CSS примеров кода: простой, отзывчивый, ценовой, периодический и т. Д.Обновление апрельской коллекции 2019 года. 5 новый предмет.
- Таблицы
- Периодические таблицы
- Таблицы цен
- Таблицы начальной загрузки
Автор
- Крис Смит
О коде
Зигзагообразный стол
Таблица с зигзагообразной диагональю.
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: -
Автор
- Эстель Вейл
О коде
Таблица с замороженным заголовком таблицы и левым столбцом
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
Адаптивный: нет
Зависимости: -
Автор
- Натан Кокерилл
Сделано с
- HTML
- CSS / SCSS
- JavaScript (jquery.js)
О коде
Сортировка строк таблицы по заголовкам таблицы
Сортировка строк таблицы по заголовкам таблицы - по возрастанию и убыванию.
Автор
- Фаиз Ахме
О коде
Адаптивные таблицы с использованием li
Я использовалli
для создания таблиц, потому что стилиli
проще и позволяют больше настраивать.
Автор
- Флор Антара
О коде
Адаптивная таблица Только HTML и CSS
HTML-таблица сделана отзывчивой только с помощью CSS. На мобильных устройствах строка заголовка фиксируется слева, а содержимое прокручивается по горизонтали.
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: -
Демонстрационное изображение: Адаптивная таблица с FlexboxАдаптивная таблица с Flexbox
Идея заключалась в том, чтобы создать красивый рабочий стол, который будет работать и на небольших экранах.
Сделано Matys
6 апреля 2017 г.
Макет адаптивной таблицы CSS
Использование CSS для адаптивных макетов таблиц вместо плавающих. Адаптивный (все сводится к одной строке) тоже.
Сделано Люком Петерсом
21 февраля 2017 г.
Фиксированный заголовок таблицы
Фиксированный заголовок таблицы с простым кодом jQuery.
Сделано Нихилом Кришнаном
3 ноября 2016 г.
Адаптивная таблица
CSS трюков метод адаптивной таблицы.
Сделано Алико
11 апреля 2016 г.
Выделение таблицы на чистом CSS
Простой (и неприятный) трюк, позволяющий выделять вертикальное и горизонтальное выделение при наведении курсора на таблицы, созданные с использованием чистого CSS.
Сделано Александром Эрландссоном
22 марта 2016 г.
Автор
- Вольф Вортманн
О коде
Заголовки липких таблиц на позиции: липкие;
Попытка создать красивую таблицу с прикрепленными заголовками таблиц, если их таблица находится в области просмотра (например, имена списков имен iOS начинаются с заглавной буквы).
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
Адаптивный: нет
Зависимости: -
Демо-изображение: Адаптивная таблицаАдаптивная таблица
Адаптивная таблица с шаблонами rwd-table-patterns.
Сделано SitePoint
15 апреля 2015 г.
Адаптивная таблица CSS и подробное представление
Пример сценария таблицы и подробного представления.
Сделано Хизер Бучел
29 июня 2014 г.
Адаптивная таблица
Таблица сворачивается в «список» на маленьких экранах.Заголовки извлекаются из атрибутов данных.
Сделано Джеффом Юэном
25 марта 2014 г.
Автор
- Чарли Кэткарт
О коде
Таблица адаптивных и доступных данных
Таблица данных, адаптированная и доступная для мобильных устройств. В более узких портах обзора значок скрывается, строки превращаются в карточки с метками, отображаемыми с использованием атрибута data- *
.
Таблица в HTML и CSS
Таблица фактов о питании в HTML и CSS.
Сделано Крисом Койером
9 сентября 2013 г.
Автор
- Рубен С. Гарсия
О коде
Сетка CSS Периодическая таблица
Периодическая таблица элементов с CSS Grid.
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
Адаптивный: нет
Зависимости: -
Автор
- Оливия Нг
О коде
Сетка CSS: Периодическая таблица
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
Адаптивный: нет
Зависимости: простые иконки-строки.CSS
Автор
- Майк Голус
О коде
Периодическая таблица элементов
Адаптивная и анимированная периодическая таблица элементов в HTML и CSS.
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: -
Автор
- Линдси Гриззард
О коде
Периодическая таблица типа CSS Grid
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
Адаптивный: нет
Зависимости: -
Автор
- Томми Ходгинс
О коде
Периодическая таблица
Периодическая таблица в HTML и JavaScript.
Автор
- Альма Мадсен
О коде
Периодическая таблица
HTML и CSS периодическая таблица .
Автор
- francescomansi
О коде
Tailwind CSS Pricing Panel Responsive
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: попутный ветер.CSS
Автор
- Арис Кукович
О коде
Таблицы цен
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: -
Автор
- Флорин Поп
О коде
Тарифы
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: -
Автор
- Пауло Рибейро
О коде
Таблица цен
Таблица цен на чистый CSS.
Совместимые браузеры: Chrome, Edge, Firefox, Opera, Safari
отзывчивый: да
Зависимости: -
Автор
- Джамал Хассонуи
О коде
Таблица цен UI
Простая таблица цен.
Автор
- Chouaib Blgn
О коде
Дизайн интерфейса таблицы цен
Таблица цен с анимацией.
Автор
- Трэвис Уильямсон
О коде
Таблица цен
Таблица цен, сравнивающая 3 различных тарифных плана для мистической компьютерной компании.
Демонстрационное изображение: Таблица цен на HTML и CSSТаблица цен на HTML и CSS
Таблица цен на Bootstrap.
Сделано Сахар Али Раза
10 декабря 2016 г.
Таблица адаптивных цен
Таблица адаптивных цен HTML / CSS.
Сделано Alex
31 июля 2016 г.
Таблица цен
Таблица цен с HTML и CSS.
Сделано Матиасом Мартином
7 апреля 2016 г.
Таблицы цен на материалы
Адаптивные таблицы цен на материалы в HTML и CSS.
Сделано Кресо Галич
14 января 2016 г.
Таблица цен
Таблица цен с HTML и CSS.
Сделано Майком Торосяном
25 февраля 2015 г.
Таблица цен на отзывчивый Flip
Адаптивная перевернутая таблица цен для просмотра цен за месяц или год.