LINUX.ORG.RU

Третий том учебника А. В. Столярова

 , ,


24

10

На сайте А. В. Столярова выложен в открытый доступ учебник «Системы и сети», продолживший серию «Программирование: введение в профессию». Серия в целом ориентирована на ОС семейства Unix (в том числе использующие ядро Linux) в качестве единой среды для обучения.

Третий том посвящён операционной системе как явлению, тому, какие услуги ядро предоставляет прикладным программам и на каких принципах основана его работа. В отдельную часть вынесены сведения о компьютерных сетях, включая подсистему сокетов; в этой части также рассмотрено событийно-ориентированное программирование на примере TCP-сервера. Ещё одна часть посвящена работе с разделяемыми данными; здесь рассматриваются классические задачи синхронизации, семафоры и мьютексы, даются базовые сведения о библиотеке pthread.

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

>>> Подробности

★★★

Проверено: jollheef ()
Последнее исправление: sudopacman (всего исправлений: 6)

Ответ на: комментарий от Deleted

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

Что-с? трудолюбивый программист? В смысле, такой программист, который не ленивый? Вы таких видели? И что, даже не в Китае?

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

Croco ★★★
() автор топика
Последнее исправление: Croco (всего исправлений: 1)
Ответ на: не только от exescript

у него еще видеоблог имеется :) https://www.youtube.com/channel/UCwpF2sTk7VLnCImJtYr45oQ

Довольно интересный. Хотя и в основном банальные вещи.

Croco, у меня нет аккаунта на ютубе (там гугл номер телефона хочет, ну его нафиг), посему в комментарии к видео написать не могу, но уж коль скоро вы здесь вроде отвечаете на вопросы… В одном из своих видео вы говорите «и где такие системы? Вот джаббер собственно последняя». Но как же так? Ведь существует же (и существовал на момент создания этого видео) и Martix и Mumble (он, кстати, весьма популярен, особенно среди геймеров), работающие по тому же принципу (хотя у Mumble ближе к IRC, в основном к одному серверу все подключаются, но всё же каждый может поднять свой), не говоря уж об уже давно существующем Tox, а также чуть позже появившемся Ring, которые вообще полную децентрализацию предоставляют (грубо говоря, каждый пользователь сам себе и сервер). Вы не знали о них?

P. S. По теме: книжка неплохая. Жаль, что только pdf.

Psych218 ★★★★★
()
Последнее исправление: Psych218 (всего исправлений: 1)
Ответ на: комментарий от efim

Вы простите но зачем паскаль в 2016 году? я могу понять C но не поскаль

В паскале есть нормальные модули. В C (и C++, кстати) - эмуляция модульности из говна и палок. В 1974 году она, возможно, смотрелась нормально, но не в 2016 и даже не в 1995. Новичка ошибки, связанные с этой псевдомодульностью, способны выбить из колеи.

Нормальные строки, опять-таки.

hobbit ★★★★★
()
Ответ на: комментарий от Virtuos86

Спасибо, но мне показалось, что если написать так, то может показаться что таковы приоритеты, а мне хотелось обозначить лишь номера, чтобы ссылаться в тексте ниже было проще. Правильнее было бы наверное написать (a), (b), (c) и тп...

ASM ★★
()
Ответ на: комментарий от ASM
  1. Простата кода.
  2. Скорость разработки.
  3. Производительность работы.
  4. Стабильность работы.
  5. Минимизация используемой памяти.
[list=a]
[*]Простата кода.
[*]Скорость разработки.
[*]Производительность работы.
[*]Стабильность работы.
[*]Минимизация используемой памяти.
[/list]
Psych218 ★★★★★
()
Ответ на: комментарий от anonymous

Если бы это был просто мужик с помойки, то да, а тут сидит на ВМК и вдалбливает студентам свои извращенные представления о жизни. Но я конечно надеюсь что сильно в этом заблуждаюсь.

ASM ★★
()
Ответ на: комментарий от Psych218

книжка неплохая. Жаль, что только pdf.

популярный стандарт же для технической литературы в электронном виде
вот опрос даже Какой формат Вы предпочитаете для технической литературы в электронном виде?

anonymous
()

Крутота! Спасибо вам!

ei-grad ★★★★★
()
Ответ на: комментарий от anonymous

популярный стандарт же для технической литературы в электронном виде

Я знаю. Да и не спрашивал почему в pdf (да и ничего против не имею). Плохо, что только в pdf. Я бы предпочёл ещё альтернативу в fb2, хоть том же markdown или на худой конец html, да в чём угодно, где текст является собственно текстом, а не жёстко привязан к страницам, где я могу сам выбрать шрифт, если меня не устраивает использованный, или сделать больше/меньше расстояние между строками. Да и с навигацией там обычно получше будет, и с поиском. pdf хорошо подходит в первую очередь для печати. Читать с экрана текст, разделённый на псевдобумажные страницы, набранные заранее выбранным шрифтом — какой-то пережиток. Нет смысла переносить ограничения бумажной книги как физического носителя на экран.

Psych218 ★★★★★
()
Ответ на: комментарий от Psych218

Вы не знали о них?

Представьте себе, нет. О Matrix узнал тут из новостей на ЛОРе (уже после записи того ролика), о Tox мне рассказали в комментах на тюбике, про Mumble и Ring сейчас вот узнаю впервые.

Жаль, что только pdf.

Это оригинал-макет печатной книжки, ну, за вычетом двух первых страниц и последней. Буквально с этого вот PDF'а её и печатали, я потом для веб-версии только пришпандорил сканы обложки и лицензию.

Croco ★★★
() автор топика
Ответ на: комментарий от Croco

Что-с? трудолюбивый программист? В смысле, такой программист, который не ленивый? Вы таких видели? И что, даже не в Китае?

Я только слышал о таких. Из Японии. И то, их единицы.

reprimand ★★★★★
()
Ответ на: комментарий от i-rinat

Поломка в Linux совместимости с юзерспейсом — это что-то очень маловероятное.

Как ты думаешь, автор так и задумал интерфейс на плюсах? Я ещё помню время, когда вся менюшка была видима а не одна кнопка. А нормальную работу в линуксе lxdream не застал - не успел. Куча всего в линуксе не работает и не переносится на другие дистры из-за необоснованного прибивания приложений гвоздями к особенностям архитектуры ОС. Да часто проще в вайне win32 приложение запустить чем нативное, линуксовое.

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

Глюки иксов и иксовых приложений к ядру отношения не имеют. Само ядро, как раз, совместимость с приложениями не ломает. Это чуть ли не основная заповедь Торвальдса. Поломка совсем из-за других компонентов происходит.

curufinwe ★★★★★
()
Ответ на: комментарий от Napilnik

Как ты думаешь, автор так и задумал интерфейс на плюсах? Я ещё помню время, когда вся менюшка была видима а не одна кнопка.

Ядро тут причём? Что в нём изменилось, что поломало этот твой софт?

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

Какие дистры? Ты про ядро говоришь. Между дистрами оно одинаковое.

i-rinat ★★★★★
()
Ответ на: комментарий от curufinwe

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

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

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

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

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

Ты путаешь userspace API и kernelspace API. Первое стабильно. Второе нестабильно. Когда ты не можешь собрать видеодрайвер не на том ядре, это вопрос к kernelspace API.

Новые ядра нужны для новых возможностей. Это не мешает им поддерживать старые возможности.

Legioner ★★★★★
()
Ответ на: комментарий от Napilnik

Когда пытаешься собрать видеодрайвер на не том ядре, вылезают ошибки на несовместимость типов данных.

Драйвер - это не приложение, это драйвер! Он внутри ядра. А API, которое снаружи, и для приложений, стабильное и не ломается. Новые ядра - чтобы были новые драйверы, внезапно.

curufinwe ★★★★★
()

Так, вот что, какого хрена?! Кто в моём посте исправил 'Linux' на 'GNU/Linux'? Если у вас тут нельзя линукс называть линуксом, я предпочту вообще убрать свою тему, но словосочетание 'GNU/Linux' в анонсе своей книжки я бы не употребил ни при каких условиях. Я не Столлман, и отдельные его закидоны, включая конкретно этот, в гробу видал. Самое интересное, что у меня самого уже нет возможности редактирования, зато модераторы резвятся как хотят.

Croco ★★★
() автор топика
Ответ на: комментарий от Croco

Всё правильно, товарищ GNU/Столяров. Система называется GNU и никак иначе.

anon1337
()
Ответ на: комментарий от i-rinat

Ядро тут причём? Что в нём изменилось, что поломало этот твой софт?

Не мой, я на плюсах интерфейс эмулятора спектрума не пишу - данные программы шустро работали ещё досе, на 20МГц процессорах, чтобы ускорять их где попало низкоуровневыми фичами. А некоторые авторы программ постоянно такой фигнёй увлекаются, в результате часть софта хорошо работавшего на одноядерниках, на многоядерниках внезапно окосела.

Какие дистры? Ты про ядро говоришь.

А мне никчему ядро без окружения.

Между дистрами оно одинаковое.

Это как? Ведро 2.х из центоси такое же как в последней бубунте или федоре? Пытался я, в рамках эксперимента, вкорячить пакеты с «одинаковым» ведром чуть меньшей версии - всё хреново было после перезагрузки.

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

Это как? Ведро 2.х из центоси такое же как в последней бубунте или федоре? Пытался я, в рамках эксперимента, вкорячить пакеты с «одинаковым» ведром чуть меньшей версии - всё хреново было после перезагрузки.

Вот кстати да. Как-то столкнулся, что материнка не работала с ядрами старше 2.6.22. А софт хотелось свежий. Я создал тему, спросил как вкорячить. Меня все дружно уверяли, что никаких проблем, в любой дистрибутив любое ядро можно воткнуть. А оказалось нет. В принципе они хорошо совместимы, но проблемы возникают с udev - он любит, как ты говоришь, новые фичи. А иксы любят новый udev. В результате я таки вкорячил, но иксы не работали никак.

Но это лишь udev, тот же firefox актуальный работал на древних ядрах нормально. Да и все остальное.

curufinwe ★★★★★
()

Шикарная новость! Вот только вычитал первый том, прислал автору все найденные недочёты, а от него ни ответа, ни привета.

unDEFER ★★★★★
()
Ответ на: комментарий от Croco

Это оригинал-макет печатной книжки

Это — печаль. Честно.

Мне вот интересно, почему нельзя было использовать XeLaTeX и нормальные шрифты? Что мешало взять готовый, по человечески выглядящий класс, например: (1), (2)? Недостаточно страшно получилось бы? Опять же, из нормально свёрстанного латеха, получить epub или html — плёвое дело.

А PDF, кстати, традиционно создан в чёрт его знает какой кодировке и даже примеры программ оттуда копируются кракозяблами. Шёл 2017 год.

З.Ы. У автора есть пособие «LaTeX за три дня». Это тот самый случай сапожника без сапог, да?

ShizuShidou
()
Ответ на: комментарий от curufinwe

Драйвер - это не приложение, это драйвер! Он внутри ядра.

Новые ядра - чтобы были новые драйверы, внезапно.

Замечательное архетектурное решение! Модульность хорошо работает только на выкидывание кода из ядра, а если надо добавить другой драйвер, то ставь другое ядро вместе с окружением. Даже М$ с Гуглом от таких менструаций устали.

А API, которое снаружи, и для приложений, стабильное и не ломается.

Для приложений нужны драйвера, а вариантов, какой поставить при такой «модульности» совсем мало.

Napilnik ★★★★★
()
Ответ на: комментарий от ShizuShidou

А PDF, кстати, традиционно создан в чёрт его знает какой кодировке и даже примеры программ оттуда копируются кракозяблами. Шёл 2017 год.

Честно говоря, мне уже надоело всем объяснять, что это сделано намеренно. Раньше я специально не подключал cmap, потом оно стало текстовый слой делать корректным даже без него, так что пришлось изрядно похимичить, чтобы его сломать.

Ни в epub, ни тем более в html я свои книжки переводить никому не позволю. Вообще ни в какой редактируемый или близкий к редактируемому формат.

Croco ★★★
() автор топика
Последнее исправление: Croco (всего исправлений: 1)
Ответ на: комментарий от hobbit

А при чём здесь плюсы?

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

Napilnik ★★★★★
()
Ответ на: комментарий от Croco

Вообще ни в какой редактируемый или близкий к редактируемому формат.

ни в какой близкий к читаемому

Пофиксил. Не благодарите.

ShizuShidou
()
Ответ на: комментарий от anonymous

кукарекать все мастера
напиши свободную
напиши

Иллюстрировать эту банальность было совершенно не обязательно.

Zmicier ★★★★★
()
Ответ на: комментарий от Napilnik

А мне никчему ядро без окружения.

Тем не менее, ты писал про ядро.

Скажи, ты правда не понимаешь разницы? Хотя зачем я спрашиваю?

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от unDEFER

а от него ни ответа, ни привета

э... а в каком виде должен быть ответ с приветом? :-)

У меня есть экземпляр книжки с помеченными в нём багами, в том числе из этого списка. Если произойдёт чудо и книжка будет когда-нибудь переиздаваться, то там всё будет исправлено. Ещё мне предлагали сделать отдельным PDF'ом список обнаруженных опечаток, но — блин — ну не было у меня времени этим заняться, уж простите великодушно.

Croco ★★★
() автор топика
Ответ на: комментарий от Croco

переводить никому не позволю

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

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Тем не менее, ты писал про ядро.

Системные вызовы? Не, не слышал.

Хотя зачем я спрашиваю?

Пытаешься услышать ответ от эха в своей голове? Хак: если надеть на голову просторную кастрюлю, слышно будет лучше.

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

Системные вызовы? Не, не слышал.

Ну я понял, что ты не слышал. Ты так и не ответил, какие системные вызовы сломались, скажем, с ветки 2.2.

i-rinat ★★★★★
()
Ответ на: комментарий от Zmicier

так а ты что хочешь? поменять везде Linux на GNU/Linux, издать и продавать? трудиться надо, созидать, а не пытаться везде халявный профит с чужого труда получать.

anonymous
()
Ответ на: комментарий от Croco

Ни в epub, ни тем более в html я свои книжки переводить никому не позволю. Вообще ни в какой редактируемый или близкий к редактируемому формат.

То есть ты собираешь с сообщества деньги, но при этом стараешься создать максимальное количество проблем для тех, кто будет читать? Но зачем?

Deleted
()
Ответ на: комментарий от i-rinat

Ну я понял, что ты не слышал.

Реклама: надень кастрюлю, слышимость улучшится!

Ты так и не ответил, какие системные вызовы сломались, скажем, с ветки 2.2.

А их для прибитого гвоздями ко всему что не нужно приложения обязательно ломать? Достаточно через не изменившиеся типы данных передать информацию, которую приложение не сможет правильно обработать. Торвальдс все данные вовремя отследить не сможет - у него голова не квадратная.

Napilnik ★★★★★
()
Ответ на: комментарий от anonymous

так а ты что хочешь?

От кого? От вас — вероятно, ничего.

От гражданина Столярова — тоже. Тот, кому «приходится изрядно химичить», чтобы превратить текстовый слой в пэ-дэ-эфке в нечитаемую кашу (не дай боже, кто скопирует!), находится за гранью моих скромных способностей к вразумлению.

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

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Napilnik

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

Пример ты, конечно, привести не сможешь.

i-rinat ★★★★★
()
Ответ на: комментарий от Zmicier

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

по-твоему, все «несвободные» книги нужно собрать и сжечь. твой фашизм не пройдёт.

anonymous
()
Ответ на: комментарий от Zmicier

неужели ты настолько туп, что не видишь причинно-следственной связи между «одобрением и поддержкой» и появлением данной книги?

anonymous
()
Ответ на: комментарий от anonymous

неужели ты настолько туп

Ой, все! Доведение до абсурда не прокатило — пустим в ход прямое хамство, приправленное для видимости какой-то пред’явой вне всякой связи с контекстом.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от tm4

очевидно одно, лоровским модераторам подвести человека «под монастырь» как два пальца об асфальт. могут, например, изменить чьё-нибудь сообщение так, что оно будет противоречить ук, и потом докажи что не верблюд.

как минимум, должно быть всем видно кто и что отредактировал.

anonymous
()
Ответ на: комментарий от Zmicier

не ты ответь: ты считаешь что всех «несвободных» книг не должно быть или у тебя предвзятое отношение к данному конкретному автору?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.