The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Операционной системе Unix исполнилось 50 лет , opennews (?), 24-Авг-19, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


47. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (47), 24-Авг-19, 12:43 
POSIX - стандарт IEEE и стандарт настолько широкий, что его поддержка есть даже в винде - Microsoft POSIX subsystem, Windows C Runtime Library, вмещающий в себя POSIX API и тп. Так что можно сидеть на винде и следовать стандартам POSIX... Тут речь в теме скорее не о POSIX, а о философии UNIX и о стандартах UNIX.

Вот краткая статья об этих стандартах Single UNIX Specification (SUS) -

https://en.wikipedia.org/wiki/UNIX_03


    4.1 Currently registered UNIX systems
        4.1.1 AIX
        4.1.2 EulerOS
        4.1.3 HP-UX
        4.1.4 Inspur K-UX
        4.1.5 macOS
        4.1.6 Solaris
        4.1.7 z/OS
    4.2 Previously registered UNIX systems
        4.2.1 Reliant UNIX
        4.2.2 Xinuos
        4.2.3 Tru64 UNIX
        4.2.4 Other
    4.3 Non-registered Unix-like systems

Ответить | Правка | Наверх | Cообщить модератору

97. "Операционной системе Unix исполнилось 50 лет "  +2 +/
Сообщение от й (?), 24-Авг-19, 15:20 
И где у нас в Windows runtime fork()?
Ответить | Правка | Наверх | Cообщить модератору

153. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (153), 24-Авг-19, 20:50 
В M$ обосновали, почему форк не нужен: https://www.microsoft.com/en-us/research/uploads/prod/2019/0...
Кстати, не сказать, чтобы совсем уж неубедительно.
Ответить | Правка | Наверх | Cообщить модератору

162. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 24-Авг-19, 21:20 
fork есть в POSIX.1 (88 год)
Так что не надо сказок про POSIX-совместимый Windows runtime
Ответить | Правка | Наверх | Cообщить модератору

189. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (153), 24-Авг-19, 23:29 
Да есть, есть в винде fork, успокойся уже. Просто он хорошо спрятан.

> Yes – the Windows kernel has supported “fork” for a long time (going back to earlier POSIX and SFU application support), but it is not exposed in the Win32 programming model that the rest of Windows is programmed against.

https://blogs.msdn.microsoft.com/wsl/2016/05/23/pico-process.../

Ответить | Правка | Наверх | Cообщить модератору

192. "Операционной системе Unix исполнилось 50 лет "  +1 +/
Сообщение от й (?), 24-Авг-19, 23:36 
> Да есть, есть в винде fork, успокойся уже. Просто он хорошо спрятан.

аж в wsl (виртуалке с линуксом)? неудивительно.

Ответить | Правка | Наверх | Cообщить модератору

237. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (153), 25-Авг-19, 20:50 
Нет, читай внимательнее. Речь идёт как раз о том, что fork был в винде задолго до WSL (того WSL, который ещё не был вирткалкой, кстати).
Ответить | Правка | Наверх | Cообщить модератору

239. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 25-Авг-19, 20:56 
слушай, я cygwin застал ещё в 90-х. и даже sfu пробовал пользоваться (оно было жутко тормозным). wsl1 -- это тот же sfu и с теми же проблемами, которые они так и не смогли решить и остановились на том, чтобы засунуть Linux в Hyper-V, т.к. так будет быстрее.

все упомянутые солюшны пытаются эмулировать fork для win32, но муторно и неудачно. ни fork, ни posix_spawn, ни pthreads в нативном для windows api нет, есть только медленные велосипеды на тему "попробуем его сэмулировать", но они все не в нативном api.

Ответить | Правка | Наверх | Cообщить модератору

253. "Операционной системе Unix исполнилось 50 лет "  –1 +/
Сообщение от Аноним (153), 25-Авг-19, 22:22 
Да знаю я это. Если бы ты почитал статью по ссылке выше, тоже узнал бы кое-что:

> For example, Cygwin is a POSIX compatibility environment for Windows; it implements fork in order to run Linux applications. Since the Win32 API lacks fork, Cygwin emulates it on top of CreateProcess() [31, 47]: it creates a new process running the same program as the parent and copies all writable pages (data sections, heap, stack, etc.) before resuming the child.
> <…>
> Ironically, the NT kernel natively supports fork; only the Win32 API on which Cygwin depends does not (user-mode libraries and system services are not fork-aware, so a forked Win32 process crashes).

Ответить | Правка | Наверх | Cообщить модератору

255. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 25-Авг-19, 22:33 
>> Ironically, the NT kernel natively supports fork; only the Win32 API on which Cygwin depends does not (user-mode libraries and system services are not fork-aware, so a forked Win32 process crashes).

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

Ответить | Правка | Наверх | Cообщить модератору

259. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (153), 25-Авг-19, 22:56 
Не надо делать вид, что ты не видишь разницы между «форка нет» и «форк есть, но если мешать его использование с winapi — приложение будет падать».
Ответить | Правка | Наверх | Cообщить модератору

260. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 25-Авг-19, 23:06 
не, у них там "форк типа должен был быть, но не заработал, поэтому мы даже разработчикам о нём не сказали и даже форком не назвали".
если бы он работал -- они бы не велосипедили его в sfu, а позже в wsl1.

в Windows C api нету fork(), которую с 88 года требует POSIX. у тебя какой-то другой 'Windows C runtime', где есть fork()?

Ответить | Правка | К родителю #259 | Наверх | Cообщить модератору

278. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (153), 26-Авг-19, 10:06 
> не, у них там "форк типа должен был быть, но не заработал, поэтому мы даже разработчикам о нём не сказали и даже форком не назвали".

Это всё твои фантазии.

> у тебя какой-то другой 'Windows C runtime', где есть fork()?

А про runtime я ничего и не писал. Спроси у тёзки, где он там его нашёл. Я, честно, понятия не имею, есть он там или нет, и был ли когда-нибудь.

Ответить | Правка | К родителю #260 | Наверх | Cообщить модератору

256. "Операционной системе Unix исполнилось 50 лет "  –1 +/
Сообщение от й (?), 25-Авг-19, 22:36 
да, 26 лет -- это реально дохрена. они за это время ядро переписывали не меньше четырёх раз, рантайм не меньше десяти. а в fork так и не смогли.
Ответить | Правка | К родителю #253 | Наверх | Cообщить модератору

273. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (273), 26-Авг-19, 03:37 
Чем в SFU fork не fork?
Ответить | Правка | К родителю #239 | Наверх | Cообщить модератору

284. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 26-Авг-19, 12:31 
ваше sfu умерло в 2014 году, вылазьте из криокамеры
его не только не поставишь на современную винду, его уже тупо скачать негде
Ответить | Правка | Наверх | Cообщить модератору

291. "Операционной системе Unix исполнилось 50 лет "  –1 +/
Сообщение от Аноним (273), 27-Авг-19, 01:55 
fork() тоже умер, это не мешает его обсуждать
на вопрос ответите?
Ответить | Правка | Наверх | Cообщить модератору

222. "Операционной системе Unix исполнилось 50 лет "  –1 +/
Сообщение от Аноним (222), 25-Авг-19, 10:47 
> Да есть, есть в винде fork, успокойся уже. Просто он хорошо спрятан.
>> Yes – the Windows kernel has supported “fork” for a long time (going back to earlier POSIX and SFU application support), but it is not exposed in the Win32 programming model that the rest of Windows is programmed against.

В ядре однозначно есть. PspCreateThread. Префикс Ps как раз намекает на POSIX ;)

> https://blogs.msdn.microsoft.com/wsl/2016/05/23/pico-process.../

Ответить | Правка | К родителю #189 | Наверх | Cообщить модератору

187. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 24-Авг-19, 23:22 
почитал ссылку, если коротко, они пишут, что любят posix_spawn и не любят fork т.к. первый быстрее.
три возражения:

1. как будто в винде вообще есть posix_spawn (стандартизованный в 99 году).

2. в винде куча легаси. в 2019 году в ней до сих пор зарезервировано имя файла 'lpt9', например. лично мне практически полезнее был бы fork в винде, чем lpt9. практическая польза: заработал бы ansible нативно, например. да и вообще всех этих цигвинов и wsl не было бы, если бы винда действительно была posix-совместимая.

3. это сравнение тёплого с мягким, эти функции делают тупо разное. это как говорить, что vt-x ненужна т.к. есть docker.

Ответить | Правка | К родителю #153 | Наверх | Cообщить модератору

191. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от Аноним (153), 24-Авг-19, 23:36 
> как будто в винде вообще есть posix_spawn

Как будто речь в статье идёт о винде.

> в винде куча легаси

Как будто я тут пропагнадирую винду.

> это сравнение тёплого с мягким, эти функции делают тупо разное.

Так речь идёт, если вчитаться, не о fork как таковом, а о мантре fork-exec, которая, конечно, делает не в точности то же самое, что и posix_spawn (иначе как можно было бы рассуждать о том, что одно лучше другого?), но используется для достижения той же конечной цели.

Ответить | Правка | Наверх | Cообщить модератору

195. "Операционной системе Unix исполнилось 50 лет "  +/
Сообщение от й (?), 24-Авг-19, 23:54 
>> как будто в винде вообще есть posix_spawn
> Как будто речь в статье идёт о винде.
>> в винде куча легаси
> Как будто я тут пропагнадирую винду.

отмотай тред, я прицепился к тому, что якобы 'Windows C runtime' умеет в POSIX.
fork стандартизован в posix в 88 году, posix_spawn -- в 99, обоих в современном Windows C runtime нет.
о чём спорим?

Ответить | Правка | Наверх | Cообщить модератору

238. "Операционной системе Unix исполнилось 50 лет "  –1 +/
Сообщение от Аноним (153), 25-Авг-19, 20:53 
> о чём спорим?

Понятия не имею, о чём ты споришь. Лично я просто поделился информацией.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру