embox / embox Goto Github PK
View Code? Open in Web Editor NEWModular and configurable OS for embedded applications
Home Page: http://embox.github.io
License: BSD 2-Clause "Simplified" License
Modular and configurable OS for embedded applications
Home Page: http://embox.github.io
License: BSD 2-Clause "Simplified" License
ipl_xxx interface doesn't correspond ipl_xxx interface from HAL.
Describe EMBOX build system API (make-side packages, mods, dependency resolving, flags and so on).
Design 'setjmp' and 'longjmp' function in microblaze environment.
And achieve to setjmp test passes correctly
Некоторые версии echo не воспринимают ключ -e, хотя при этом верно интерпретируют управляющие символы.
SIMULATION_TRG is old code in project.
run 'make all' on the unconfigured project
Human-readable error message is expected.
Instead you can see:
make all
gcc -E -Wp, -P -undef -nostdinc -I./conf -D__MODS_MK__ \
-MMD -MT build/codegen/mods.mk -MF build/codegen/mods.mk.d ./mk/confmacro.S \
| sed 's/$N/\n/g' > build/codegen/mods.mk
./mk/confmacro.S:39:21: error: mods.conf: Нет такого файла или каталога
gcc -E -Wp, -P -undef -nostdinc -I./conf -D__BUILD_MK__ \
-MMD -MT build/codegen/build.mk -MF build/codegen/build.mk.d
./mk/confmacro.S \
| sed 's/$N/\n/g' > build/codegen/build.mk
./mk/confmacro.S:12:22: error: build.conf: Нет такого файла или каталога
./mk/confmacro.S:18:24: error: options.conf: Нет такого файла или каталога
Listing packages
Processing packages
Listing essentials
Listing mods
Listing libs
Processing all units
Processing mod deps
./src/tests/mmu/Makefile:1: EMBuild warning:: Undefined dependencies for
mod embox.test.mmu_enable:: embox.hal.test.mmu embox.hal.mm.mmu
./src/tests/soft_traps/Makefile:1: EMBuild warning:: Undefined dependencies
for mod embox.test.soft_traps:: embox.hal.test.traps
Done.
Error: conf directory or files do not exist
Try "make TEMPLATE=<profile> config"
See templates dir for possible profiles
make: *** [check_conf_dir] Ошибка 1
Move environment header to hal/env folder
Implement traps testlib for sparc. Test soft_traps must pass.
Originally assigned to @batsun
mmu_probe
Cc: @abusalimov
To achieve loading files via TFTP.
The connected themes:
Обдумать следующую проблему:
Включен режим виртуальной памяти. Если маркеры находятся в шапке свободного блока физической памяти, который не отображен в виртуальное адресное пространство, то как прочитать этот маркер?
Пока видится 2 решения:
Design interface for possibility interrupts functionality testing
портирование под arm9
Cc: @AntonKozlov
Предлагается реализовать менеджер физической памяти, использую метод граничных маркеров.
Cc: @fijiol
As far as linking the final image tightly relies on arch part, the latter should provide a facility to access linkage information, e.g. about sections, memory regions, stack, and so on.
Added possibility setting stack parameters in configuration files.
If we set section for stack we can check suit or not our stack into our memory map
Cc: @abusalimov
реализовать Simple Network Management Protocol
Cc: @alexkalmuk, @HAK1R
Delete some reference to commercial project
Analogue of the bash ctrl+c for the embox commands.
After pressing ctrl-c the executing command would be interrupted.
By Kryachko Alexey, Okhotsky Maxim.
Implement traps testlib for microblaze. Design test for checking it. Test soft_traps must pass.
functions 'spin_lock' and 'spin_unlock' in net_pack_manager.c are used with wrong interface
unsigned long sp;
spin_lock(sp);
must be
unsigned long sp;
spin_lock(&sp);
Suppose I am a hardware engineer.
Why should I learn what is Mods and how Dependency Injection works?
Why should I rename Makefile_template to Makefile?
Why should I edit Makefile at all?
I just want to add a new test. And nothing more.
Похоже, нет ясного понимания, что требуется от системы регрессионного тестирования. По крайней мере, то, что предлагал Антон, то, как это понял я, и тот код, который написал Леха, слабо коррелируют между собой. Поскольку работающая версия должна появиться к вечеру понедельника, предлагаю здесь зафиксировать саму задачу и в темпе ее реализовать.
Cc: @anton-bondarev, @afomin
запустить загруженный по TFTP образ linux.
OVK_REGxxx is bad name style
Портирование под x86.
Код из основной ветки sparc (бывшая sparc-experimental) работает с ошибками.
Что-то не так с вложенными прерываниями.
Make outputs the following error messages, but anyway builds the project.
Error: conf directory or files do not exist
Try "make TEMPLATE=<profile> config"
See templates dir for possible profiles
Design interface for possibility testing traps functionality.
Describe follow interfaces
Move headers to hal/test folder
Building repeatedly configured project causes an error to be printed when trying to use backup~ dir as config.
make TEMPLATE=sparc config
make TEMPLATE=sparc config
make all
make all
The last "make all" outputs the following:
make all
Error: conf directory or files do not exist
Try "make TEMPLATE=<profile> config"
See templates dir for possible profiles
make -C ./ PROJECT_NAME=backup~ build_target; make -C ./
PROJECT_NAME=sparc_release build_target;
make[1]: Entering directory `/home/karkaroff/workspace/ovk/embox'
Error: conf directory or files do not exist
Try "make TEMPLATE=<profile> config"
See templates dir for possible profiles
make[1]: Leaving directory `/home/karkaroff/workspace/ovk/embox'
make[1]: Entering directory `/home/karkaroff/workspace/ovk/embox'
Build complete
make[1]: Leaving directory `/home/karkaroff/workspace/ovk/embox'
Originally assigned to @afomin
Design interface for possibility mmu functionality testing
19:41 sikmir: не всё хорошо с сетью всё таки в не обсолете...
я: хм
а что там еще?
19:43 sikmir: то что мы видили это ерунда, я убрал, а косяк что пинги то ходют, а если по тфтп валиться где и раньше на /* see you soon! */^M
jmp %t_pc^M
4400b2e0: 81 c4 40 00 jmp %l1
rett %t_npc^M
4400b2e4: 81 cc 80 00 rett %l2
19:44 я: а регистры пишет?
19:45 sikmir: INS LOCALS OUTS GLOBALS
0: 00000000 F34000C1 4401E800 00000000
1: 440812B4 4400EA8C 440812B4 44091DD0
2: 440810C0 4400EA90 440810C0 00000000
3: 000000CC 00000010 000000CC 00000000
4: 00000000 00000002 00000000 00000000
5: C0A8003B 00000800 00000000 00000000
6: 44091D70 00000008 44091CC0 00000000
7: 4400EA68 00000004 4400B20C 00000000
psr: F34000C1 wim: 00000004 tbr: 44000060 y: 00000000
6 error mode
19:46 похоже это на команде ret
19:47 я: да, rett в инвалидное окно
Cc: @sikmir
собственно по сабжу http://sourceware.org/newlib/
Требуется сохранять структуру шаблона в папке conf.
Идея следующая:
./conf/
build.conf
lds.conf
...
patch1/
(? build.conf, ...)
patch.conf (включает все файлы патча)
patch1_bla.conf
patch1_blabla.conf
patch1_blablabla.conf
patch2/
...
patch3/
...
...
Предлагается собирать конфигурацию base и конфигурации для каждого патча отдельно
Cc: @abusalimov
Originally assigned to @afomin
Timers module contains bad code.
May be do timers list instead massive
Сборка проекта новым компилятором под SPARC производит неработающий код.
В секции .rodata образа лежат нули.
Также, по всей видимости, поменялась семантика атрибутов alias и weakref.
Проект не собирается после моего прекрасного коммита (897fe93).
Зацикливается на цели start_script
Cc: @abusalimov
отрефакторить и доработать icmp протокол
Describe demands for start project on new platform
Describe EMBOX Mods framework (C-side binding and API).
Подумать, следует ли отображать в память служебные таблицы, например, таблицы самого MMU.
Скорее всего этот вопрос будет решаться для каждой архитектуры в отдельности.
Add possibility to set output images: srec? disassembler and so on
Cc: @abusalimov
Предлагается перенести стартовый скрипт из дебрей исходников в конфиг, чтобы его можно было рописывать в шаблонах
Есть два варианта
первый (мне он больше нравится + попроще) - завести макроопределение, например. #define START_SCRIPT "..."
, задаваемое чем-то вроде start_script("...")
в конфиге.
Второй - хранить отдельный файл со стартовым скриптом. Тогда можно либо оформить его как отдельный модуль с зависимостью shell (хотя тут мне до конца не понятно, как), либо так же через макроопределение хранить к нему путь
Cc: @abusalimov
Originally assigned to @afomin
How to define memory block for stack? Should it be static or dynamic?
Partially relies on #46.
Transmit test_variable using data pointer
Originally assigned to @batsun
Now common.h contains several different features such as Debug IO macros, direct access macros and so on. This features must be placed in owm header files.
Появляется ошибка
mk/embuild.mk:22: *** missing `endif'. Stop.
У меня Windows XP pro SP3. Поставил GSTools, Subclipse, cygwin с gcc-core v.3.4.4, gcc-mingw-core, make, cmake.
Cc: @anton-bondarev, @batsun, @abusalimov
реализовать loopback network device
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.