Как в таком подходе: Node(id, parent_id) вы будете делать обход дерева? Ведь голова дерева не содержит ссылок на потомков. Вам придется где-то держать все листовые узлы. Такая структура узлов больше похожа на стек, а не на дерево.
У дедушки - классический вариант двоичного дерева.
ConEmu - это не терминал/командная строка, а оболочка для них, со своими плюшками. Вообще хорошая штука. Внутри ConEmu можно запускать любой другой терминал один или несколько, и не только их.
Если любите bash поставьте msys2 - там в комплекте весь набор линуксовых утилит, а так же пакетный менеджер pacman, можно добавлять другие утилиты/библиотеки, в репозитории их полно.
Algoritmus-net, Подобную функцию компилятор с включенной оптимизацией может вообще игнорировать и не вызывать, т.к. ее работа не влияет ни на внутреннее состояние функции ни на внешнее состояние вызывающей программы. То же самое и с циклом - нормальный компилятор увидит, что в цикле у вас ничего не делается и переменная x больше нигде не используется, поэтому он может запросто проигнорировать этот цикл.
Но в целом 15432 прав: операция, которую делает функция выполняется в 1 машинную команду. Вызов функции добавляет к ней еще несколько команд, вызов функции по указателю - на одну команду больше. Но у вас не просто указатель на функцию, а массив указателей, поэтому, возможно, на 2-3 команды больше.
Кстати, не уверен, что в коде на дельфи вообще происходит вызов функции. Но я уже давно не брал в руки дельфи, поэтому могу тут ошибиться.
Какой такой софт, которым пользуются обычные пользователи, нуждается в админских правах?
Обычно проблемы с "неправильным" софтом можно решить промониторив к чему нужен доступ этому софту и предоставив этот доступ один раз или выбрав какой-либо обходной вариант, если есть возможность.
Правда есть и совсем клинические случаи, но это редкость.
И еще есть разный криво сломанный софт, которому для работы позарез нужны админские права (точнее админские права нужны кривой ломалке, а не софту) - этот вариант я вообще не рассматриваю для использования.
Максим Гришин, про дублирование свичей абсолютно согласен.
Вообще, когда собираешь отказоустойчивую инфраструктуру, все надо дублировать. Иначе этот не продублированный узел сразу становится точкой отказа.
Та же ситуация и с хранилищем - оно в моей схеме единственное. В правильных системах используют хранилище с двумя контроллерами (любой контроллер может заменить другой) и/или 2 хранилища с возможностью on-line дублирования данных.
Ту да же можно добавить - дублирование блоков питания на сервере и хранилище, дублирование сетевых интерфейсов и т.п.
Но для сети в 20 компов все дублировать может быть слишком затратно, поэтому нужно все обдумать, на чем можно сэкономить: что держать в холодном резерве в удаленном офисе, что в главном, что дублировать.
HA - High availability - высокая доступность.
В продуктах VMWare это так называется, в других может по другому.
Смысл в том, что HA контролирует состояния гипервизоров и если видит, что один из них перестал отвечать, то переносит настроенные ВМ на работающие гипервизоры.
leremin, В работающей десктопной винде всегда есть есть службы работающие с правами LocalSystem или NetworkService, так что ядро действительно многопользовательское. Кроме того всегда можно запустить любую программу от имени другого пользователя вручную.
Но легально запустить два сеанса рабочего стола нельзя.
- Нормальный удаленный доступ. Тоже не понимаю, зачем Windows блокирует экран при удаленном подключении даже под другим логином.
Экран блокируется при удаленном доступе только в десктопной версии винды, т.к. это однопользовательская ОС, т.е. в один момент времени может работать только один пользователь. Есть варианты для лечения, но это нарушение лицензии, конечно. В серверных версиях может заходить сколько угодно пользователей (столько сколько куплено лицензий) - ничего не блокируется.
Ну и протокол RDP в винде очень хорош и служба терминалов нормальная.
Знаю, что в никсах можно делать удаленные экраны X Window (сейчас уже не вспомню правильной терминологии - давно было), но никогда не видел нормально работающего варианта. Как-то сам пытался это сделать, но без особых успехов.
VNC по сравнению с RDP - жалкая поделка.
Единственный нормальный удаленный доступ в никсах - это ssh, но он есть и в винде.
avp dnepr, Опишите подробней ситуацию.
1.какая версия винды?
2.как подключаетесь к интеренту: WiFi, кабель? Если кабель, то прямой от провайдера или есть роутер?
3.Как происходит ошибка: сразу после включения компа, позже, как повторяется? Какие закономерности появления ошибки вы обнаружили?
4.Что делаете, чтоб восстановить работу?
Судя по вышеприведенному диалогу :-) виновником может быть не только компьютер, но и роутер.
Протестируйте роутер с другого устройства, если есть возможность.
Это не ошибка. Уровень: Сведения. Т.е. это информационное сообщение, о чем понятно из текста.
Обычно мастер диагностики сетевых ошибок в винде сделать ничего толкового не может.
Ищите ошибку сами или дайте сюда больше информации о том, как проявляется ошибка и как подключаетесь к интернету.
Игорь Веденов, значит предусмотрите механизм, чтоб можно было включать/выключать автоподключение ВПН.
Альтернатива - установите ssh сервер, настройте к нему доступ снаружи и будете иметь доступ к командной строке, откуда можно стартовать ВПН вручную. Но если у вас дома динамический адрес, нужно будет дополнительно как-то решать проблему с постоянной сменой адреса.
Я бы предпочел первый вариант в том или ином виде.
nelepica, Этот сервер с белым IP у вас является шлюзом в интернет для внутренней сети? И он не контроллер домена АД?
Если да, то поднимайте на нем ДНС с зоной для внешнего использования. Там можно публиковать только реально видимые из интернета имена узлов.
Интернет домен, у вас должен быть куплен и для него настроен IP адрес ДНС сервера - это должен быть адрес вашего сервера на котором вы развернете внешний ДНС.
Ваш текущий ДНС будет "для внутреннего использования".
nelepica, Не зная организации вашей сети дальше трудно что-то советовать.
В Windows Server - есть встроенный ДНС сервер, нужно его установить и настроить зону.
Если у вас внутри сети развернута АД, то все еще усложняется, т.к. она использует ДНС для работы своего домена. На всех контроллерах домена работает ДНС сервер с внутренней зоной АД.
Вариант дерева Node(id, parent_id) - часто видел в базах данных для хранения чего-либо иерархического.
В SQL это легко реализовывается.