Перейти к содержимому

Zer0Galaxy

Гуру
  • Публикации

    1 220
  • Зарегистрирован

  • Посещение

  • Победитель дней

    189

Сообщения, опубликованные пользователем Zer0Galaxy


  1.  

     

    Я создаю систему на основе OpenOS, в любом случае упоминания OpenOS в моей системе бутут стерты.
    Раз так, позволь высказать еще пару мыслей:

    Первое. Если бы я взялся писать ось, я бы начал с ядра, а не с оболочки. Оболочка во многом будет зависеть от ядра. Ядро же от оболочки - никак.

    Второе. Считается плохим тоном взять за основу чужую программу (песню, картину, киноленту) и сделать из нее свою, удалив упоминание о первоисточнике. Так что, или пиши свою систему с нуля или позиционируй её как надстройку над OpenOS. Иначе мы рискуем получить еще одну OpenOS, но под другим именем.

    Это, конечно, моё личное мнение. Как поступать - решать тебе.


  2. local form = { caption="", elements={} }
      . . .
    function RomeAPI.newForm(caption)
      local object = form
      object.caption = caption
      return object
    end
    

    В корне не верный подход. При попытке создать второй экземпляр формы, ты перетрешь свойство caption и перечень элементов ранее существовавшей формы. Рекомендую ознакомиться со способами реализации ООП под Луа.

    • Нравится 1

  3. Так, так. Давай разберемся. Ты пишешь новую операционную систему или графическую оболочку под OpenOS? Если новую систему, то зачем используешь опеновские библиотеки term, event и т.д? Без OpenOS они работать не будут. А если графическую оболочку, то называй вещи своими именами.

    • Нравится 1

  4.  

     

    А разве ключи таблицы не будут есть эдак раз в пятьдесят (а то и больше) памяти? По сути ведь тут она и есть. Это погрешность недопустимая, я полагаю.
    Ну, думаю, объем занимаемый скалярной переменной тоже будет складываться не только из бита/байта, но и как минимум, из имени переменной. В общем, каждый конкретный случай может быть уникальным.


  5. computer=require("computer")
    freememory1=0
    freememory2=0
    n=10000
    for i=1,10 do
    freememory1=freememory1+computer.freeMemory()
    os.sleep(0.5)
    end
    freememory1=freememory1 / 10 --определяем свободную память до объявления массива boolean

    bool={} --объявляем массив
    for i=1,n do -- и заполняем его значениями
    bool[i]=true
    end

    for i=1,10 do
    freememory2=freememory2+computer.freeMemory()
    os.sleep(0.5)
    end
    freememory2=freememory2 / 10 --определяем свободную память после объявления массива boolean

    print("Одна переменная типа boolean занимает ",(freememory1-freememory2)/n," байт.")
    • Нравится 1

  6. Зачем? Как я понял, ты предлагаешь использовать два проектора, каждый из которых воспроизводит по три цвета. Каким образом анимация влияет на количество проекторов?

    А! Понял. Можно сделать так, два проектора отображают статическую часть куба, а два - вращающуюся грань. И того- четыре проектора.

×
×
  • Создать...