Задать вопрос
  • Почему в структурном программировании нет мертвого кода?

    @vvmtutby
    @Rsa97 say:
    Да ладно...
    if (false) {
    ... сюда никогда не попадём
    }
    
    for (i = 0; i < 0; i++) {
    ... и сюда тоже
    }



    1) См. выше
    могут "иметь место" / "помогает избежать"

    2) Не затруднит ли "for (i = 0; i < 0; i++)" переписать на ADA / Modula-3 ?
    ( мысленный эксперимент )

    3) На тему "if (false)"

    (

    }} Странно, что условный оператор
    longclaps, надеюсь, что оправдал Ваши самые смелые ожидания . . .

    )

    "Твёрдое структурное программирование" подразумевает доказательное программирование ( ADA SPARK)

    См. образец:

    https://ironsides.martincarlisle.com/

    process_dns_request.adb

    Counter := 1;
             Additional_Count := 0;
             while Counter <= NumFound and Additional_Count < DNS_Types.Unsigned_Short'Last-DNS_Types.Unsigned_Short(
                   2*Rr_Type.MaxNumRecords) loop
                --# assert Counter >= 1 and Counter<=NumFound and
                --#    (for all Z in RR_Type.ReturnedRecordsIndexType =>
                --#       (Qname_Locations(Z) >= 0 and Qname_Locations(Z) < 16384)) and
                --#    Qname_Location >=0 and Qname_Location <= 16383 and
                --#    Answer_Count >=0 and Answer_Count <= 65535 and
                --#    Additional_Count >= 0 and
                --#    Additional_Count < DNS_Types.Unsigned_Short'Last-DNS_Types.Unsigned_Short(
                --#    2*Rr_Type.MaxNumRecords) and
                --#    NumFound >= 0 and NumFound <= rr_type.MaxNumRecords and
                --#    Integer(Output_Bytes) >= DNS_Types.Header_Bits/8+1 and
                --#    Integer(Output_Bytes) <= DNS_Types.Packet_Size;
                Start_Byte := DNS_Types.Packet_Bytes_Range(Integer(Output_Bytes) -
                   DNS_Types.Header_Bits/8);
                Create_Response_A(
                   Start_Byte     => Start_Byte,
                   Domainname     => NS_Replies(Counter).nameserver,
                   Qname_Location => Qname_Locations(Counter),
                   Output_Packet  => Output_Packet,
                   Answer_Count   => Additional_Count,
                   Output_Bytes   => Output_Bytes);
                Start_Byte := DNS_Types.Packet_Bytes_Range(Integer(Output_Bytes) -
                   DNS_Types.Header_Bits/8);
                Create_Response_AAAA(
                   Start_Byte     => Start_Byte,
                   Domainname     => NS_Replies(Counter).nameserver,
                   Qname_Location => Qname_Locations(Counter),
                   Output_Packet  => Output_Packet,
                   Answer_Count   => Additional_Count,
                   Output_Bytes   => Output_Bytes);
                Counter := Counter + 1;
             end loop;
          else
             Protected_SPARK_IO_05.SPARK_IO_PO.Put_Line(Protected_SPARK_IO_05.SPARK_IO_PO.Standard_Output,"bad query type", 0);
    --            ada.text_io.put_line("qc: " & dns_types.Query_Type'image(Query_Type));
             Create_Response_Error(
                Input_Bytes   => Input_Bytes,
                Output_Packet => Output_Packet,
                Output_Bytes  => Output_Bytes);
          end if;
    
          -- this assert helps with the VCG Heap overflow
          --# assert
          --#    Answer_Count >=0 and Answer_Count <= 65535 and
          --#    Qname_Location >=0 and Qname_Location < 16384 and
          --#    Additional_Count >= 0 and
          --#    NumFound >= 0 and NumFound <= rr_type.MaxNumRecords and
          --#    Integer(Output_Bytes) >= DNS_Types.Header_Bits/8+1 and
          --#    Integer(Output_Bytes) <= DNS_Types.Packet_Size;
    
          DNSSEC := False;
          Max_Transmit := DNS_Types.UDP_Max_Size;
          -- Handle EDNS additional OPT record here!
          if Input_Packet.Header.QDCount = 1 and
             Input_Packet.Header.ARCount = 1 and
             Additional_Count < DNS_Types.Unsigned_Short'Last then
             Start_Byte := DNS_Types.Packet_Bytes_Range(Integer(Output_Bytes) -
                DNS_Types.Header_Bits/8);
             Create_Response_EDNS(
                Input_Packet     => Input_Packet,
                Input_Bytes      => Input_Bytes,
                Query_End_Byte   => Query_End_Byte,
                Start_Byte       => Start_Byte,
                Output_Packet    => Output_Packet,
                Output_Bytes     => Output_Bytes,
                Additional_Count => Additional_Count,
                DNSSEC           => DNSSEC,
                Max_Transmit     => Max_Transmit);
          elsif Input_Packet.Header.QDCount /= 1 then
             Protected_SPARK_IO_05.SPARK_IO_PO.Put_Line(Protected_SPARK_IO_05.SPARK_IO_PO.Standard_Output,"query count > 1", 0);
          elsif Input_Packet.Header.ARCount > 1 then
             Protected_SPARK_IO_05.SPARK_IO_PO.Put_Line(Protected_SPARK_IO_05.SPARK_IO_PO.Standard_Output,"ar count > 1", 0);
          end if;
  • Как изменить разрешение в hyper-v?

    @vvmtutby
    }} IMHO, не выйдет, вернее «сработает» Maximize

    }А нефиг мышкой таскать, есть же Alt+Space — Переместить и стрелочками, да на кнопычках…


    Спасибо! Надо будет попробовать при случае
  • Почему VirtualBox не видит VT-x если запущен Hyper-V?

    @vvmtutby
    Н-да, а автору ( FirstVoid) помогло . . .

    Можно "как образец" со страницы
    QEMU with WHPX
    взять
    QEMU 4.1.0-733 binaries for Windows (x86-64), compiled with support for Hyper-V and Haxm accelerators

    (

    QEMU 4.0.0-rc1-70 проявил себя хорошо

    )

    Пример:

    qemu-system-x86_64.exe -accel whpx -M q35 -m 1024 Example.ISO -net user -net nic

    Убедимся, что WHPX "включён и работает"

    VirtualBox можно попробовать:
    VirtualBox-6.1.0_BETA1-133315-Win.exe

    "Если и это не поможет", то м.б. если собрать из исходных кодов, закомментировав проверки …
    (

    Разработчики QEMU смогли ведь работать с WHPX, что же мешает р-ам vBox ?..

    )
  • Как изменить разрешение в hyper-v?

    @vvmtutby
    partisan42, буду "шаг за шагом" отвечать

    } в установщике CentOS разрешение по дефолту.


    вот что ( "video=hyperv_fb:1280x720") нашёл:

    Как изменить разрешение экрана Linux в Hyper-V?
    2. Type: sudo vi /etc/default/grub Find the line
    starting with GRUB_CMDLINE_LINUX_DEFAULT, and add video=hyperv_fb:[the resolution you want]. The resolution I want is 1280x720. So my line ends up looking like this: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=hyperv_fb:1280x720"
    3. Write the changes and quit vi.


    Остаётся это адаптировать к .iso . . .
  • Как создать ВМ Centos7 на Hyper-V с Generation 2?

    @vvmtutby
    } проверил параллельно еще на debian9
    Сопряжение Linux и Hyper-V лучше проверять на SUSE, затем на Fedora , Arch Linux

    Мне понадобилось перенести ВМ ибо . . . Я перенес *.vhdx. Пересоздал ВМ и подключил *.vhdx.

    Если внутри Gen2 VM -- Linux, то так делать нельзя ( "слетают" настройки загрузки)
    Вернее, остаются "на месте", в файле описания VM

    } Пришлось пихнуть в . . .

    Где-то видел материалы по восстановлению упомянутых настроек.
    Но, насколько помню, инф-ый матереиал был по Ubunta
  • Как преобразовать динамический системный gpt диск в базовый?

    @vvmtutby
    } преобразовать динамический системный gpt диск в базовый?

    Это точно необходимо?

    или всё же, если удастся
    } клонировать системный диск на диск меньшего размера

    то "задача будет решена?"
  • Будет ли функционировать hyper v после возврата windows в исходное состояние?

    @vvmtutby
    } Для полноценного копирования машины желательно делать экспорт с последующим импортом

    Примерно, начиная с Win Server 2012 можно ( сперва скопировав) делать сразу Import
  • Как установить VMWare workstation в Windows?

    @vvmtutby
    } VMWare видимо оттуда тянет OpenSSL


    Переменная среды path как выглядит?

    Process Monitor из состава Sysinternal что показывает?
  • Как изменить разрешение в hyper-v?

    @vvmtutby
    } сдвинуть окно за верхнюю границу экрана?

    IMHO, не выйдет, вернее "сработает" Maximize

    А вот это стотит попробовать:
    } перенести панель задач вбок?

    Или вверх . . .

    ещё вопрос ( уже к partisan42 ) : в подменю View режим Enhanced Session?

    --

    partisan42 : пишите помог ли перенос панели задач, если нет, то будем использовать ПО "виртуального монитора"
  • Почему VirtualBox не видит VT-x если запущен Hyper-V?

    @vvmtutby
    Vocler, т.е. пункт 7 не помог?

    VirtualBox 6.0 and Hyper-V 30. Aug 2019
    For reference the core steps we are using are:

    Make sure build is 1809 higher of Windows10.
    Step 1: Enable all Virtualisation extensions in the bios. e.g. Intel Virtulization technology and VT-d
    Step 2: In Control Panel, Add and remove programs, turn on Windows Features enable Windows Hypervisor Platform and Hyper-V
    Step 3: Install VirtualBox at least .10
    Step 4: Create new machine e.g. "Testmachine"
    Step 5: Load cmd prompt, (cmd)
    Step 6: cd into your install folder for virtualbox, usually "cd C:\Program Files\Oracle\VirtualBox"
    Step 7: setextradata "" "VBoxInternal/NEM/UseRing0Runloop" 0 , e.g. setextradata "Testmachine "VBoxInternal/NEM/UseRing0Runloop" 0
    Please note Step 7 is case sensitive.
    Step 8: Use as per normal, in this case our Hyper-V and VirtualBox ran together, we also used USB devices. The speed was very reasonable.
  • Почему VirtualBox не видит VT-x если запущен Hyper-V?

    @vvmtutby
    vreitech,
    вы уже нашли документацию от oracle, в которой указано, как эту экспериментальную совместимость задействовать?
    Да
    ( На всякий: я не автор вопроса)

    Это:

    доустановите фичу Windows Hypervisor Platform

    сделано?

    P.S.

    а так же

    См. тему на форуме:
    VirtualBox 6.0 and Hyper-V
  • Не запускается Виртуализация на Windows 10?

    @vvmtutby
    Kontrael, вполне может быть . . .

    См. тему на форуме:
    VirtualBox 6.0 and Hyper-V

    P.S. Лучше создать отдельный вопрос.
    ( У автора этого вопроса CPU AMD , он решил проблему использовав "альтернативные эмуляторы" )
  • Не запускается Виртуализация на Windows 10?

    @vvmtutby
    Sanes:
    если установлен Hyper-V то не будет работать виртуализация Virtualbox для х64 гостевых ОС
    Так было до vBox 6.0
    Теперь, при включённом компоненте Windows Hypervisor Platform, будет и для x64
  • Не запускается Виртуализация на Windows 10?

    @vvmtutby
    Уточнил формулировку ответа.

    При использовании Android Emulator и (или) VirtualBox с поддержкой 'Windows Hypervisor Platform'
    не потребуется отключать Hyper-V вместе с Device Guard and Credential Guard

    P.S.

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

    Пожалуйста!
  • Не запускается Виртуализация на Windows 10?

    @vvmtutby
    1809 разве содержит бакфикс по моему вопросу?
    Главное -- VirtualBox 6.X
    На 1607 "не сработало". На 1809 -- "должно". 1709 , 1803 -- не в курсе.
  • Не запускается Виртуализация на Windows 10?

    @vvmtutby
    > Одна команда и все заработало

    Лучше:
    Windows 10 v1809 + VirtualBox 6.X
  • Возможно ли установить hackintosh на VM?

    @vvmtutby
    возможно ли как-то установить hackintosh на VM такую как azure
    Да, но есть сложности:

    Хакинтош же требуется более тщательно обмануть, чтобы он думал, что на настоящем железе.


    Для начала "потренируйтесь на" Hyper-V

    https://habr.com/ru/post/429856/#comment_19372330
    1) Создал виртуальную машину, запретил динамическую память — выделил фиксированный размер. Разрешил вложенную виртуализацию:
    Set-VMProcessor -VMName <Название виртуальной машины> -ExposeVirtualizationExtensions $true

    2) Поставил серверную убунту. При установке можно сразу отметить пакеты виртуализации, либо доустановить их потом (libvirt).
    3) Установить MacOS используя готовые конфиги с https://github.com/kholia/OSX-KVM


    В Azure подойдут не все серии VM:
    Azure VM series Dv3 and Ev3 which enable running VMs inside Azure VMs or just nested virtualization.


    P.S. Или VirtualBox вместо KVM:
    Running MacOS using Virtual Box in Azure
    Статья от июля 2017, на сегодня вышел VirtualBox 6.X
  • Почему Vagrant, Puppet, Chef написаны на Ruby?

    @vvmtutby
    ( Так получилось, что персонально:
    -- в 8-ом классе работал на СМ с 8''-ми дискетами;
    -- 1-ый курс -- СМ , Fortran

    Т.е. в прошлом веке застал времена, и "до нашей эры" )

    Таких вот - интересных, но мертвых языков - много...Есть например язык PL/1, я пять лет на нем писал...


    С PL/1 сталкивался в брошюре "Алгоритмы для Олимпиад"(?).
    Source code выглядели лучше, чем на Fortran.

    Таких вот - интересных, но мертвых языков - много...COBOL - писать не писал, но чужие программы компилял :)

    На 2016 год COBOL был жив и использовался в проектах.
    ( Да, и на Хабре есть статья про COBOL и крупный скандинавский банк)

    Последние Commits в проекте GnuCOBOL от 2019-01-02,
    в CM3 Modula-3 -- на пару недель позже.

    Т.е. как говорится в книге "Прекрасная свинарка":
    "Мы полностью опровергли" разоблачения "он не спал в лифте" неподобающим образом,
    т.к. ему "принесли подушку" Ж-)
  • Почему Vagrant, Puppet, Chef написаны на Ruby?

    @vvmtutby
    ( Просто работа над опечатками:
    еще была такая программа cvsup - так та вообще была написана на Modula-2

    Следует читать как:
    еще была такая программа cvsup - так та вообще была написана на Modula-3 )

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

    Вы правы:
    Modula-3 язык, в достаточной степени, уникальный.
    CVSup -- программа написанная на Modula-3 и, из широко распространённых программ, M3 нужен для CVSup.

    Однако, Modula-3 интересный язык: компилируемый со сборкой мусора, но и с традиционной работой с указателями, многопоточность и т.д. , и т.п.


    Блог о языке программирования Modula-3

    Modula-3 for Windows x64 на forum.oberoncore.ru

    Список рассылки M3devel ( просмотр)