системные вызовы. чётче сложно найти.
gnu/linux again
Модератор: Модераторы разделов
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
системные вызовы. чётче сложно найти.
-
- Модератор
- Сообщения: 21253
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: gnu/linux again
sash-kan писал(а): ↑09.05.2012 14:11э, нееет! так мы каши не сварим!Bizdelnick писал(а): ↑09.05.2012 14:02Не часть linux'а, конечно, а любая реализация стандартной библиотеки. Примеры приводились выше. В случае GNU/Linux это glibc.
напоминаю, что мы выкинули:Bizdelnick писал(а): ↑09.05.2012 12:40из этого нечта мы выкинем элементы описанного в POSIX интерфейса
всё, нету никаких реализаций libc в нашей воображаемой «не обязательно переставшей быть операционной системе вообще»
В-первых, никто не говорил про все элементы, во-вторых, это может быть не libc, а некая гипотетическая стандартная библиотека, к POSIX не имеющая никакого отношения. Или негипотетический Dalvik, например.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
меня именно этот инересует, как ты понимаешь·
спасибо за ответы·
давай попробуем определиться, что же ещё входит в «операционную систему linux», кроме ядра·
ответь, пожалуйста, «да» или «нет»·
1. какая-нибудь реализация загрузчика входит?
2. какая-нибудь реализация shell-а входит?
3. какая-нибудь реализация программ cp, rm, mv, find входит?
4. какая-нибудь реализация standard libc входит?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
нет
единственная спорная вещь, которая скорее входит - это утилиты о которых alv говорил
-
- Сообщения: 1913
- Статус: zzz..z
Re: gnu/linux again
если вы счастливый обладатель программы linux, то пользуетесь именно таким методом ;)
хмм... разве
Код: Выделить всё
init=/bin/sh
[x] close
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
принято·
есть чёткое определение системных вызовов?
в частности: что они из себя представляют, их полный список, кто их посылает, кто на них отвечает·
если входят они, то входит и libc:
Код: Выделить всё
$ ldd /sbin/mkfs.xfs
linux-gate.so.1 => (0xb7700000)
libuuid.so.1 => /lib/libuuid.so.1 (0xb76df000)
librt.so.1 => /lib/i686/nosegneg/librt.so.1 (0xb76d6000)
libpthread.so.0 => /lib/i686/nosegneg/libpthread.so.0 (0xb76bd000)
libblkid.so.1 => /lib/libblkid.so.1 (0xb76a0000)
libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0xb7556000)
/lib/ld-linux.so.2 (0xb7701000)
даа, грустная жить получается у обладателей программы linux (использующих её в качестве операционной системы)·
проверьте·
мой опыт говорит, что для этого должен присутствовать /bin/sh — или бинарник, или симлинк на другой бинарник·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
ОС - программа загруженная куда-то туда в память, и работающая все время. Системные вызовы - реакции этой программы на внешние раздражители, чаще всего завязано на процессорные прерывания. Список: зависит от реализации ОС, посылают - процессы, отвечает - ОС. Можно обойдемся без подробнстей? Лень вспоминать, я этим не занимаюсь каждый день.
sash-kan писал(а): ↑09.05.2012 22:31если входят они, то входит и libc:
противоречие·Код: Выделить всё
$ ldd /sbin/mkfs.xfs linux-gate.so.1 => (0xb7700000) libuuid.so.1 => /lib/libuuid.so.1 (0xb76df000) librt.so.1 => /lib/i686/nosegneg/librt.so.1 (0xb76d6000) libpthread.so.0 => /lib/i686/nosegneg/libpthread.so.0 (0xb76bd000) libblkid.so.1 => /lib/libblkid.so.1 (0xb76a0000) libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0xb7556000) /lib/ld-linux.so.2 (0xb7701000)
не очень большое. они все-таки в юзерспейсе. ну используют они libc, ну удбно, ну и ладно. я не думаю что это действительно принципиально
нет
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
продолжаю цитировать Таненбаума:
с. 25 операционная система призвана навести порядок в потенциально возможном хаосе за счёт буферизации на диске всех выходных данных, предназначенных для принтера… другим примером мультиплексирования во времени может послужить совместное использование принтера· когда в очереди находятся несколько заданий на печать для распечатки на одном принтере, нужно принять решение, какое из них будет выполнено следующим·
из этого отрывка следует, что очередью заданий для печати управляет операционная система·
насколько мне известно, в коде linux нет ничего, что управляло бы очередью заданий для печати·
противоречие·
кто поможет мне его разрулить?
именно поэтому и принципиально — использует ли «операционная система linux» стандартную библиотеку c·
с. 25 операционная система призвана навести порядок в потенциально возможном хаосе за счёт буферизации на диске всех выходных данных, предназначенных для принтера… другим примером мультиплексирования во времени может послужить совместное использование принтера· когда в очереди находятся несколько заданий на печать для распечатки на одном принтере, нужно принять решение, какое из них будет выполнено следующим·
из этого отрывка следует, что очередью заданий для печати управляет операционная система·
насколько мне известно, в коде linux нет ничего, что управляло бы очередью заданий для печати·
противоречие·
кто поможет мне его разрулить?
я пытаюсь установить чёткую границу между «операционной системой linux» и «всем остальным»·
именно поэтому и принципиально — использует ли «операционная система linux» стандартную библиотеку c·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Модератор
- Сообщения: 21253
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: gnu/linux again
А я-то думал, ты пытаешься доказать существование "операционной системы GNU" (без Linux и прочих дописок).
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
я так и думал·
на данный момент у меня из твоих ответов получается такая картина:
1. «операционная система linux» — это ядро «операционной системы linux»·
2. «операционная система linux» абсолютно нефункциональна и её невозможно использовать для совершения полезных (пользователю) действий·
Bizdelnick
ты ошибаешься·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
да, конечно, достаточно будет просто привести ссылки на чёткие определения что они из себя представляют, их полный список, кто их посылает, кто на них отвечает·
а прочитать я смогу сам (улыбка)·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
Я на Танненбаума ссылку давал на прошлой странице....
А список: вот он http://bluemaster.iu.hio.no/edu/dark/lin-asm/syscalls.html
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
это противоречит изложенному в книге Вахалии: «Изучение архитектуры UNIX подразумевает описание ядра, являющегося «сердцем» каждой операционной системы.»
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
там рядом не указано что же является печенью и почками, и должны ли они вообще присутствовать ?
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
спасибо!diesel писал(а): ↑09.05.2012 23:16А список: вот он http://bluemaster.iu.hio.no/edu/dark/lin-asm/syscalls.html
согласно этому списку «операционная система linux» является (цитирую по этому посту):
не unix-подобной
не posix-совместимой
не совместимой с секцией core стандарта linux standard base
и ни один её системный вызов ни на пол-процента не совпадает ни с одной из функций перечисленных api
я вижу четыре противоречия·
помоги, пожалуйста, их разрулить·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
sash-kan писал(а): ↑09.05.2012 23:33спасибо!diesel писал(а): ↑09.05.2012 23:16А список: вот он http://bluemaster.iu.hio.no/edu/dark/lin-asm/syscalls.html
согласно этому списку «операционная система linux» является (цитирую по этому посту):
не unix-подобной
не posix-совместимой
не совместимой с секцией core стандарта linux standard base
и ни один её системный вызов ни на пол-процента не совпадает ни с одной из функций перечисленных api
дауж ) вера в RMS - это серьезно )
sorry, я прекращаю, это не имеет никакого смысла. выдергивание цитат из контекста, игра в идиота, - типичная манипуляция фактами и прочее словоблудие. для себя делаю вывод что приверженцев GNU в Linux надо посылать примерно туда же куда Свидетелей Иеговы. и пофигу что люди вроде и хорошие.
Если ты уж write и read по ссылке не нашел, с тем же набором параметров что и в любимых тобой стандартах, дальше говорить не о чем.
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
я вижу sys_read и sys_write·
write и read, упомянутые в обоих стандартах, не вижу·
p.s. я не сишник, вероятно поэтому вижу противоречие·
кто-то поможет мне его разрулить?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
А разница? Кроме префикса sys_ во всех функциях которые там описаны?
То есть ежели описанный в стандартах интерфейс стандартной библиотеки С, без префиксов, а сисколы, в которые они транслируются целиком и полностью - с префиксами, с теми же параметрами, в той же по-сути последовательности. То это конечно нифига не значит совместимость. Amen.
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
предыдущие три страницы длилась та же самая игра, но в противоположные ворота·
закончилаьь она тем, что от меня потребовали признать posix негодным критерием, явно ввиду того что он однозначно определял libc и прочее в качестве части операционной системы·
я (временно) согласился с этим и предложил пройтись от обратного — не сверху, от стандарта к ядру, а снизу, от ядра к стандарту·
когда методом чётких вопросов и ответов я лишь начал приближать тебя к тому же самому выводу (про libc), ты, почуствовав, что «пахнет жареным» обвиняешь меня в фанатизме·
что ж, это замечательный аргумент в любом споре·
спасибо, что любезно ответил (почти на все) заданные мною вопросы·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
к сожалению, я не сишник, поэтому прошу помощи у зала:diesel писал(а): ↑09.05.2012 23:54А разница? Кроме префикса sys_ во всех функциях которые там описаны?
То есть ежели описанный в стандартах интерфейс стандартной библиотеки С, без префиксов, а сисколы, в которые они транслируются целиком и полностью - с префиксами, с теми же параметрами, в той же по-сути последовательности. То это конечно нифига не значит совместимость. Amen.
как мне скомпилировать (не изменяя, конечно) такую, например, программу:
#include <unistd.h>
int main(void) { write(1, "1", 1); }
таким образом, чтобы она при запуске обратилась непосредственно к системному вызову sys_write, минуя libc·
спасибо·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
О posix как о неправильном критерии говорили потому что он определяет интерфейс, причем интерфейс через API стандартной библиотеки С. Что правильно с утилитарной точки зрения: под это дело надо таки приложения писать и поддерживать, и очень неплохо, если бы можно было более стандартный API использовать. Но нифига не правильно если речь идет что "мы определяем тут то что является операционной системой". Ты напрочь выкидываешь задачи, которые ставились создателями стандарта. Да, это подмена понятий и жонглирование фактами.
И, да, я не пытаюсь вырывать цитаты из контекста, лишь бы они подтверждали что-нибудь. Просто сжатый пересказ аргументации с примерами и прочими объяснениями. Ты вон вообще переключился на вырванные из контекста примеры про принтер

sash-kan писал(а): ↑09.05.2012 23:55я (временно) согласился с этим и предложил пройтись от обратного — не сверху, от стандарта к ядру, а снизу, от ядра к стандарту·
когда методом чётких вопросов и ответов я лишь начал приближать тебя к тому же самому выводу (про libc), ты, почуствовав, что «пахнет жареным» обвиняешь меня в фанатизме·
что ж, это замечательный аргумент в любом споре·
ты меня не стал приближать ни к какому выводу. Я изначально отвечая на твои вопросы про соместимость со стандартами сказал о том что вопрос не является корректным. Хотя, в определенном смысле эта соместимость имеет место быть.
нема за шо

-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
sash-kan писал(а): ↑10.05.2012 00:08к сожалению, я не сишник, поэтому прошу помощи у зала:diesel писал(а): ↑09.05.2012 23:54А разница? Кроме префикса sys_ во всех функциях которые там описаны?
То есть ежели описанный в стандартах интерфейс стандартной библиотеки С, без префиксов, а сисколы, в которые они транслируются целиком и полностью - с префиксами, с теми же параметрами, в той же по-сути последовательности. То это конечно нифига не значит совместимость. Amen.
как мне скомпилировать (не изменяя, конечно) такую, например, программу:
#include <unistd.h>
int main(void) { write(1, "1", 1); }
таким образом, чтобы она при запуске обратилась непосредственно к системному вызову sys_write, минуя libc·
спасибо·
write(2) непосредственно транслируется в sys_write. какие проблемы?
-
- Сообщения: 1913
- Статус: zzz..z
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
да, я был не прав, положившись на то, что ты прочитаешь указанную страницу, если у тебя возникнут сомнения по поводу контекста·
привожу контекст:
раздел называется «1.1.2. операционная система в качестве менеджера ресурсов»
речь об управлении ресурсами, конкретно о мультиплексировании ресурсов во времени·
приводится и пример такого ресурса — центральный процессор·
далее дословно (с. 25): «определение, как именно ресурс будет разделяться во времени — кто будет следующим потребителем и как долго, — это задача операционной системы· другим примером мультиплексирования во времени может послужить совместное использование принтера· когда в очереди находятся несколько заданий на печать для распечатки на одном принтере, нужно принять решение, какое из них будет выполнено следующим·»
конец цитаты и описания мультиплексирования во времени·
я понимаю автора так, что управление заданиями печати является мультиплексированием ресурса принтера во времени, а занимается мультиплексированием ресурсов во времени операционная система·
ты понимаешь по-другому? как?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: gnu/linux again
Есть функционал операционной системы: управление ресурсами. Тебе приводят пару примеров как это может происходить. Никто не говорит что очередью печати обязана управлять операционная система. Суть этих примеров показать мультиплексирование во времени(в случае с процессором, и печатью) и в пространстве(память), посеять идею о том как разные ресурсы распределяются, а не создать список ресурсов, которые должны распределяться, и указать способы их распределения.
То что ты делаешь очень просто: находим в главе про управление ресурсами "очередь печати", "очередью печати" в *nix-мире рулит CUPS(?), значить без CUPS - linux - нифига не операционная система. А поскольку cups в зависимостях нынче не то что libc имеет, у него там avahi, dbus и прочие, то есс-но без этого всего операционной системы просто нет и быть не может

-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
diesel
окей, я буквоедствую, ты буквоедствуешь в ответ (всё верно, мы применяем голую логику)·
продолжим применять логику·
цитата: (с. 20) «все программы, работающие в режиме ядра, безусловно, являются частью операционной системы, но некоторые программы, работающие вне этого режима, возможно, тоже являются её частью, или, по крайней мере, имеют с ней тесную связь»·
так как (насколько я вижу) более нигде в книге не уточняется, что это за некоторые программы, и нигде в книге (насколько я вижу) не говорится прямо о том, что какая-нибудь реализация libc не может входить в число этих некоторых программ, я делаю логический вывод, что какую-нибудь реализацию libc можно отнести к программам, работающим вне режима ядра, но являющимся частью операционной системы·
где я допускаю ошибку в логике?
окей, я буквоедствую, ты буквоедствуешь в ответ (всё верно, мы применяем голую логику)·
продолжим применять логику·
цитата: (с. 20) «все программы, работающие в режиме ядра, безусловно, являются частью операционной системы, но некоторые программы, работающие вне этого режима, возможно, тоже являются её частью, или, по крайней мере, имеют с ней тесную связь»·
так как (насколько я вижу) более нигде в книге не уточняется, что это за некоторые программы, и нигде в книге (насколько я вижу) не говорится прямо о том, что какая-нибудь реализация libc не может входить в число этих некоторых программ, я делаю логический вывод, что какую-нибудь реализацию libc можно отнести к программам, работающим вне режима ядра, но являющимся частью операционной системы·
где я допускаю ошибку в логике?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: gnu/linux again
продолжая перечитывать Таненбаума:
с. 57, раздел 1.3.8. загрузка компьютера
цитата: «как только в её распоряжении окажутся все драйверы устройств, операционная система загружает их в ядро·»
наблюдаю дистанцирование «операционной системы» и «ядра операционной системы»·
мне следует применить традиционное «здесь не читаем»?
с. 57, раздел 1.3.8. загрузка компьютера
цитата: «как только в её распоряжении окажутся все драйверы устройств, операционная система загружает их в ядро·»
наблюдаю дистанцирование «операционной системы» и «ядра операционной системы»·
мне следует применить традиционное «здесь не читаем»?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Модератор
- Сообщения: 21253
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: gnu/linux again
Здесь наблюдается ещё и дистанцирование драйверов и ядра. Выходит, что Linux - нечто большее, чем ядро, поскольку содержит в себе кучу драйверов...
Шутка, конечно. Как известно, Таненбаум просто не любит монолитные ядра. Но выходит, что эта цитата к Linux не применима в принципе, по причине предвзятости автора.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |