avva: (Default)
[personal profile] avva
Реймонд Чен: Why does each drive have its own current directory?

Во всех версиях DOS и Windows командная строка "помнит" отдельно текущую директорию для каждого диска. Если на C: сделать cd foo, потом пойти на D: и там сделать cd bar, а потом вернуться "c:", то окажешься в запомненной директории foo. Так было всегда, но я никогда не понимал, зачем это нужно. У такого поведения были свои преимущества, но были и недостатки.

Из этой записи Чена я наконец узнал, зачем это так сделано: для совместимости DOS 2.0 с программами DOS 1.0. И по этой причине текущая директория так работает во всех версиях DOS и Windows, включая самые последние. Потому что когда-то нужно было, чтобы программы для DOS 1.0, не знавшие что такое "директория", могли писать в разные директории на дискетах, когда их запускали в DOS 2.0. Бедный, бедный мой мозг.

Было бы полезно сделать подборку записей Реймонда Чена (а у него немало записей в таком духе) обязательной для изучения будущими программистами в университетах.

Date: 2010-10-14 09:58 pm (UTC)
From: [identity profile] dmarck.livejournal.com
мало какие вещи в мире содержат больше ужасного, чем попытки сохранить обратную совместимость ;-P
Edited Date: 2010-10-14 09:59 pm (UTC)

Date: 2010-10-15 06:01 am (UTC)
From: [identity profile] dmpogo.livejournal.com
Попытки переписать все заново с чистого листа часто с ними соревнуются :)

(no subject)

From: [identity profile] meharher.livejournal.com - Date: 2010-10-15 09:42 am (UTC) - Expand

Date: 2010-10-14 10:05 pm (UTC)
From: [identity profile] gaal.livejournal.com
What I want to know is why "drives" exist at all. They're not significantly easier to understand than a single-root fs (I think), and are much more of a pain to administer. AFAIK this evil started with CP/M, not Microsoft, but perhaps it's even more ancient.

Date: 2010-10-14 10:22 pm (UTC)
From: [identity profile] fyysik.livejournal.com
for sure, lot of CP/M specifics is borrowed from DEC's RT-11. So it adds symbolic meaning to fact of creation of Windows NT by DEC-refugee:)

(no subject)

From: [identity profile] mfi.livejournal.com - Date: 2010-10-14 10:32 pm (UTC) - Expand

(no subject)

From: [identity profile] fyysik.livejournal.com - Date: 2010-10-14 10:47 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-14 11:10 pm (UTC) - Expand

(no subject)

From: [identity profile] fyysik.livejournal.com - Date: 2010-10-14 11:23 pm (UTC) - Expand

(no subject)

From: [identity profile] mfi.livejournal.com - Date: 2010-10-14 11:36 pm (UTC) - Expand

(no subject)

From: [identity profile] fyysik.livejournal.com - Date: 2010-10-15 12:04 am (UTC) - Expand

(no subject)

From: [identity profile] mfi.livejournal.com - Date: 2010-10-15 12:46 am (UTC) - Expand

(no subject)

From: [identity profile] skylump.livejournal.com - Date: 2010-10-15 06:27 am (UTC) - Expand

(no subject)

From: [identity profile] vveakling.livejournal.com - Date: 2010-10-15 08:06 am (UTC) - Expand

(no subject)

From: [identity profile] mfi.livejournal.com - Date: 2010-10-16 11:29 pm (UTC) - Expand

(no subject)

From: [identity profile] dmitry zuikov - Date: 2010-11-07 05:08 am (UTC) - Expand

насчет экстентов

From: (Anonymous) - Date: 2010-10-19 04:35 pm (UTC) - Expand

Re: насчет экстентов

From: [identity profile] mfi.livejournal.com - Date: 2010-10-19 06:26 pm (UTC) - Expand

Date: 2010-10-15 01:39 am (UTC)
From: [identity profile] ygam.livejournal.com
In PowerShell, you can create multiletter drives with directories of virtual objects. For example, the registry hive HKEY_LOCAL_MACHINE is one such drive. You can do

dir 'HKLM:\SOFTWARE\JavaSoft\Java Runtime Environment'

Date: 2010-10-15 06:54 am (UTC)
From: [identity profile] freeborn.livejournal.com
\\.\PhysicalDisk1 ?
backward compatibility is a great thing actually.

Date: 2010-10-16 01:39 am (UTC)
From: [identity profile] cryinstone.livejournal.com
Драйвы - наследие Доса. В файловых системах Линухов - Юнихов, например, их нет.

(no subject)

From: [identity profile] sobaker.livejournal.com - Date: 2010-11-07 09:02 am (UTC) - Expand

Date: 2010-10-14 10:19 pm (UTC)
From: [identity profile] mfi.livejournal.com
Вот за такое трепетное отношение к совместимости, DOS и Форточки вынесли своих конкурентов. Я читал у Сполянски еще пару крышесносных примеров - про игру-полетный симулятор и про Lotus 1-2-3.

Date: 2010-10-16 07:12 am (UTC)
From: (Anonymous)
Спольски

Date: 2010-10-14 10:36 pm (UTC)
From: [identity profile] chessplayer.livejournal.com
кстати, такая подборка уже есть

Date: 2010-10-14 10:43 pm (UTC)

Date: 2010-10-14 11:06 pm (UTC)
From: [identity profile] http://users.livejournal.com/_iga/
Там же он пишет, что это заморочка исключительно cmd.exe. Win32 подсистема и ядро такими глупостями не затронуто.

Date: 2010-10-14 11:53 pm (UTC)
From: [identity profile] 1master.livejournal.com
У него книжка есть.

Date: 2010-10-15 12:47 am (UTC)
From: [identity profile] msh.livejournal.com
Я недавно столкнулся с проблемой, когда у нового сервера с 24 процессорами и 36 гигабайтами памяти, с встроенным гипервизором, веб-сервером и удаленным десктопом случайно сломали эмуляцию BIOS IBM XT и чипсета IBM AT, и это оказалось очень серьезной проблемой. Я даже не знаю с чем это сравнить в других областях техники.

Date: 2010-10-15 12:59 am (UTC)
From: [identity profile] ygam.livejournal.com
С латинским алфавитом? Вы знаете, почему в нем Z - последняя буква, а в греческом - шестая?

(no subject)

From: [identity profile] msh.livejournal.com - Date: 2010-10-15 01:12 am (UTC) - Expand

(no subject)

From: [identity profile] ygam.livejournal.com - Date: 2010-10-15 01:35 am (UTC) - Expand

Date: 2010-10-15 01:48 am (UTC)
From: [identity profile] cryinstone.livejournal.com
Упаси боже нас от дней, когда изучение Виндовс будет обязательным в университетах.

Date: 2010-10-15 02:33 am (UTC)
From: [identity profile] meshko.livejournal.com
А мне вот интересно, почему когда я на дисе d:, команда
cd c:\temp не переводит меня на диск c?

Date: 2010-10-15 07:05 am (UTC)
From: (Anonymous)
как раз из-за эффекта который описан в исходном посте. она переводила текущую директорию на диске c, но не меняла текущий диск.

(no subject)

From: [identity profile] meshko.livejournal.com - Date: 2010-10-15 11:54 am (UTC) - Expand

(no subject)

From: [identity profile] isk.livejournal.com - Date: 2010-10-15 10:51 am (UTC) - Expand

Date: 2010-10-15 02:48 am (UTC)
From: [identity profile] selfmade.livejournal.com
Ещё нельзя создать динамическую веб страницу на IIS с именем con.aspx, prn.aspx и подобными из-за обратной совместимости уходящей в глубину веков к CP/M.

Date: 2010-10-15 04:16 am (UTC)
From: [identity profile] hiend.livejournal.com


c:
cd a
> c:\a\
cd b
> c:\a\b\
d:
cd docs
> d:\docs\
copy *.* c:
____________
и вот тут он как раз и скопирует все файлы из d:\docs в текущую дирректорию на диске (c:\a\b\)
именно поэтому мне всегда казалось удобным, что он помнит текущую диру на каждом диске...

Date: 2010-10-15 07:09 am (UTC)
From: [identity profile] rezdm.livejournal.com
Тут вон и фидошную софтину обновляют...

Date: 2010-10-15 08:50 am (UTC)
From: (Anonymous)
из недавнего раздражающего. у меня в компьютере есть маленький диск, отформатированный под ext3, с коллекцией музыки. и есть большой внешний диск с fat. я не мог просто так перенести коллекцию с одного на другой, потому что риппер обозвал файлы по схеме 'исполнитель - автор : название', а двоеточия в именах файлов на fat запрещены, windows их не любит, уже не совсем понятно, почему.

Date: 2010-10-15 01:25 pm (UTC)
From: [identity profile] ktotam.livejournal.com
ADS.
про это там по ссылке, кстати, тоже есть

(no subject)

From: (Anonymous) - Date: 2010-10-15 02:41 pm (UTC) - Expand

(no subject)

From: [identity profile] ktotam.livejournal.com - Date: 2010-10-15 03:08 pm (UTC) - Expand

Вспомнилось

Date: 2010-10-15 09:50 am (UTC)
From: [identity profile] timur0.livejournal.com
По бокам космического корабля "Кеннеди" размещаются два двигателя по 5 футов шириной. Конструкторы корабля хотели бы сделать эти двигатели еще шире, но не смогли. Почему?
Дело в том, что двигатели эти доставлялись по железной дороге, которая проходит по узкому туннелю. Расстояние между рельсами стандартное: 4 фута 8.5 дюйма, поэтому конструкторы могли сделать двигатели только шириной 5 футов.
Возникает вопрос: почему расстояние между рельсами 4 фута 8.5 дюйма? Откуда взялась эта цифра? Оказывается, что железную дорогу в Штатах делали такую же, как и в Англии, а в Англии делали железнодорожные вагоны по тому же принципу, что и трамвайные, а первые трамваи производились в Англии по образу и подобию конки. А длина оси конки составляла как раз 4 фута 8.5 дюйма! Но почему? Потому что конки делали с тем расчетом, чтобы их оси попадали в колеи на английских дорогах, чтобы колеса меньше изнашивались, а расстояние между колеями в Англии как раз 4 фута 8.5 дюйма! Отчего так? Да просто дороги в Великобритании стали делать римляне, подводя их под размер своих боевых колесниц, и длина оси стандартной римской колесницы равнялась... правильно, 4 футам 8.5 дюймам! Ну вот теперь мы докопались, откуда взялся этот размер, но все же почему римлянам вздумалось делать свои колесницы с осями именно такой длины? А вот почему: в такую колесницу запрягали обычно двух лошадей. А 4 фута 8.5 дюйма - это был как раз размер двух лошадиных задниц! Делать ось колесницы длиннее было неудобно, так как это нарушало бы равновесие колесницы.
Следовательно, вот и ответ на самый первый вопрос: даже теперь, когда человек вышел в космос, его наивысшие технические достижения напрямую зависят от РАЗМЕРА ЛОШАДИНОЙ ЗАДНИЦЫ
http://meshulash.livejournal.com/5892.html

Re: Вспомнилось

Date: 2010-10-15 10:12 am (UTC)
From: (Anonymous)
ну вот, вчера коллега на работе то же самое вспомнил
http://www.snopes.com/history/american/gauge.asp

Re: Вспомнилось

From: [identity profile] mopexod.livejournal.com - Date: 2010-10-15 09:43 pm (UTC) - Expand

Date: 2010-10-15 04:29 pm (UTC)
From: [identity profile] cousin-it.livejournal.com
И все равно старые игрушки приходится запускать в DOSBox.

Date: 2010-10-15 11:33 pm (UTC)
From: [identity profile] bespechnoepero.livejournal.com
напоминает старый анекдот:

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

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

Date: 2010-10-19 06:40 am (UTC)
From: [identity profile] gvadelupa.livejournal.com
Из инструкции по инсталляции программы «Спринтер», приобретённой в 2010 году (программа активно поддерживается и развивается, её назначение — удалённая сдача отчётности в налоговую, внутри всякие современные технологии, типа электронной подписи, шифрования и т.п.):

---------------------

ПРИМЕЧАНИЕ. В полях "Каталог программы электронной почты" и "Каталог отправки данных отчетности" наименования всех каталогов должны содержать не более 8 символов, не являющихся пробелами. Если это условие не выполнено, необходимо вместо наименование каталога ввести выражение:
<первые 6 символов наименования, не считая пробелов>~1
Например, вместо Program files следует писать Progra~1, вместо Pro fi следует писать Profi~1.

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 29th, 2025 05:17 am
Powered by Dreamwidth Studios