vxworks

A Strange Problem in Heap Memory!

I found one thread of a multi-threaded application to be crashing in VxWorks. I don't have debug information. On deeper analysis I found that the crash is being caused due to a global memory address value being changed. This global memory address (which is an address to a function. I am using a function pointer) is being stored at a pa...

single common address space for all tasks

Hi, How to give single common address space for all tasks. IF its happening like this can we avoid virtual to physical memory mapping. I f all task sharing common address space then how can we avoid virtual to physical memory mapping. ...

Design patterns commonly used for RTOS (VXworks)

Hi, Can anyone help me on design patterns commonly used for RTOS? In VXworks, which pattern is more preferable? ...

Adding -fno-omit-frame-pointer option in ARMARCH5gnu in VxWorks leads to random crashes.

Application crashes randomly when -fno-omit-frame-pointer option is added during compilation. This problem happens in ARMARCH5gnu architecture in VxWorks. Any pointers in the direction for resolving this will be helpful. ...

Unit testing UDP socket handling code

Are there any 'good' ways to cause a thread waiting on a recvfrom() call to become unblocked and return with an error? The motivation for this is to write unit tests for a system which includes a unit that reads UDP datagrams. One of the branches handles errors on the recvfrom call itself. The code isn't required to distinguish between...

Executing a script from inside code in VxWorks 6.7

In VxWorks 5.5.1 you could run a script using the execute command. In VxWorks 6.7 the execute command is no longer supported. Does anyone now if there is a replacement? I am specifically talking about from inside code not command line. ...

How does a VxWorks scheduler get executed?

Hello All, Would like to know how the scheduler gets called so that it can switch tasks. As in even if its preemptive scheduling or round robin scheduling - the scheduler should come in to picture to do any kind of task switching. Supposing a low priority task has an infinite loop - when does the scheduler intervene and switch to a high...

tcp/ip accept not returning, but client does

server: vxworks 6.3 calls the usual socket, bind, listen, then: for (;;) { client = accept(sfd,NULL,NULL); // pass client to worker thread } client: .NET 2.0 TcpClient constructor to connect to server that takes the string hostname and int port, like: TcpClient client = new TcpClient(server_ip, port); This is working fine whe...

How to configure PCI-to-PCI bridge device in VxWorks?

I'm working with board support package (BSP) in VxWorks that uses pciAutoConfig() to configure the PCI bus. When I add an Ethernet controller card to the bus the pci display routines do not show the card. Using a bus analyzer I discovered that the Ethernet adapter actually consists of a PCI-to-PCI bridge with two Ethernet controllers ...

Thread class memory allocation oddity on an embedded platform

I am running into a strange issue I've been able to track down somewhat but I still can't see the cause. Maybe someone here can shed some light? I'm running on a PowerPC processor on top of VxWorks 5.5 developing in C++ with the PPCgnu604 toolchain. I have a class like so: class MyClass { public: void run( void ); private: ...

How do I receive raw, layer 2 packets in C/C++?

How do I receive layer 2 packets in POSIXy C++? The packets only have src and dst MAC address, type/length, and custom formatted data. They're not TCP or UDP or IP or IGMP or ARP or whatever - they're a home-brewed format given unto me by the Hardware guys. My socket(AF_PACKET, SOCK_RAW, IPPROTO_RAW) never returns from its recvfrom(). ...

How can I write commands to the vxworks shell with a c program

If I wanted to run a shell command in linux with a c program, I would use system("ls"); Is there a way I can accomplish this in Wind River vxworks? I found the below example but I'm wondering do I need to include vxworks header files for this to work? I assume I do, but how do I figure out which one? Example: // This function runs...

sendto not working on VxWorks

I asked this question before and had no resolution (still having the problem). I am stumped because the function returned without error and NO DATA was sent! This code works on Linux ... the VxWorks version does not work (sendto does not send, though it returns without an ERROR). The synopsis - I am writing a simple echo server - The se...