embedded

Python *.py, *.pyo, *.pyc: Which can be eliminated for an Embedded System?

眉间皱痕 提交于 2019-12-04 02:13:36
To squeeze into the limited amount of filesystem storage available in an embedded system I'm currently playing with, I would like to eliminate any files that could reasonably be removed without significantly impacting functionality or performance. The *.py, *.pyo, and *.pyc files in the Python library account for a sizable amount of space, I'm wondering which of these options would be most reasonable for a Python 2.6 installation in a small embedded system: Keep *.py, eliminate *.pyc and *.pyo (Maintain ability to debug, performance suffers?) Keep *.py and *.pyc, eliminate *.pyo (Does

C/C++ linker CALL16 reloc at xxxxx not against global symbol

风格不统一 提交于 2019-12-04 01:42:10
问题 I'm getting these errors while linking, both messages have to do with the same object file. CALL16 reloc at 0x5f8 not against global symbol and could not read symbols: Bad value The 2nd message seems to be the reason I'm getting the CALL16 error, but the file compiles just fine. Any tips on fixing this? FYI, I'm cross compiling for a MIPS target and using gcc 4.1.2 EDIT: No luck so far: Here are my flags used: -fPIC,-Wl,-rpath,-Wl,-O1 I've also tried the following without success: -mno

Differences between -O0 and -O1 in GCC

橙三吉。 提交于 2019-12-03 23:26:26
While compiling some code I noticed big differences in the assembler created between -O0 and -O1. I wanted to run through enabling/disabling optimisations until I found out what was causing a certain change in the assembler. If I use -fverbose-asm to find out exactly which flags O1 is enabling compared to O0, and then disable them manually, why is the assembler produced still so massively different? Even if I run gcc with O0 and manually add all the flags that fverbose-asm said were enabled with O1, I don't get the same assembler that I would have got just by using O1. Is there anything apart

How to debug random data abort issue on arm based platform

流过昼夜 提交于 2019-12-03 20:39:26
As developing on ARM based project, we get data abort randomly, that is when we play with it we get a data abort interrupt. But the data abort is not always on the same point when we check with the register map with r14 or r13, even though check the function callback. Is there anyway that I can get the information about the root cause on data abort precisely? I have try the ref 2 but could not get the same point when I trap the data about interrupt. Related ARM Data Abort error exception debugging ARM: HOW TO ANALYZE A DATA ABORT EXCEPTION Checking the link register (r14) as described in your

Small RISC emulator

为君一笑 提交于 2019-12-03 20:26:29
I'm looking to build a VM into a game and was wondering if anyone knew of any really simple VM's (I was thinking RISC/PIC was close to what I wanted) that are usually used for embedded projects such as controlling robots, motors, sensors, etc. My main concern is having to write a compiler/assembler if I roll my own. I'd be nice to use the tools that are already out there or in its simplest form just a C compiler that can compile for it :-p. I really don't want to re-invent the wheel here but I also need thousands of these running around a virtual world so they have to be as simple and as fast

Circular Buffer in Flash

末鹿安然 提交于 2019-12-03 20:05:14
问题 I need to store items of varying length in a circular queue in a flash chip. Each item will have its encapsulation so I can figure out how big it is and where the next item begins. When there are enough items in the buffer, it will wrap to the beginning. What is a good way to store a circular queue in a flash chip? There is a possibility of tens of thousands of items I would like to store. So starting at the beginning and reading to the end of the buffer is not ideal because it will take time

What server-side web technology should I use in an embedded system?

一笑奈何 提交于 2019-12-03 19:01:26
I'm starting a new project and I'm trying to figure out what technologies I should use. Here's the deal, I'm writing some software that will run on a wireless router and I would like to provide a web interface. So most likely I will have to do some server-side web development. The only issue is that the device I will be deploying this to only has 16 MB of RAM (Ubiquiti Bullet). Here's some more info: 1.) I'll be using openwrt (linux). 2.) Obviously it has to be lightweight 3.) It's a school project, so I can use any technologies I'd like. Obviously PHP is the obvious choice, but is there

C XML library for Embedded Systems [closed]

久未见 提交于 2019-12-03 18:48:22
问题 Closed. This question is off-topic. It is not currently accepting answers. Want to improve this question? Update the question so it's on-topic for Stack Overflow. Closed 5 years ago . I'm working on a project for an embedded system that's using XML for getting data into and out of the system. I don't want the XML handling to devolve into a bunch of bits that build XML strings using snprintf() / strcat() and friends or parse XML by counting " < " and " > " characters. I've found several XML

Lightweight regex parser

别等时光非礼了梦想. 提交于 2019-12-03 17:50:06
问题 I'd like to use a Regex parser to aid in some string processing in a C application. I'm ideally looking for something lightweight and open-source. The target platform is an embedded system so we're looking to save as much as possible with memory consumption in particular. I've found a number of options online but was wondering if anyone can make additional suggestions that may help in this particular context. Many thanks, 回答1: Scintilla, an open source text editor component, uses Ozan S.

Is there a programmatic way to check stack corruption

跟風遠走 提交于 2019-12-03 17:37:03
问题 I am working with a multithreaded embedded application. Each thread is allocated stack sizes based on its functionality. Recently we found that one of the thread corrupted the stack by defining a array of local variables that was more than the stack size. The OS is uItron. My solution, I registered a timer for 10 mS, and this timer will check for stack corruption. Stack corruption checking method, 1. Initialize the stack memory with some unique pattern (I use 0x5A5A5A5A) 2. Check from the