Go to Post My team does what works for my team. Let your team do the same. - Alexa Stott [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 25-03-2010, 13:14
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,101
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
vxworks

See attached GIF file, written by Jim Collier in March 2004.

It's a bit dated, but a very succinct summary.

I am wondering if it is still correct, having been written 6 years ago.

Can anyone with vxworks knowledge comment?


~

Last edited by Ether : 20-05-2010 at 03:05.
  #2   Spotlight this post!  
Unread 25-03-2010, 14:43
EricVanWyk EricVanWyk is offline
Registered User
no team
 
Join Date: Jan 2007
Rookie Year: 2000
Location: Boston
Posts: 1,597
EricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond repute
Send a message via AIM to EricVanWyk
Re: vxworks

I'm pretty good at admitting my weaknesses, so I'll bite first: What?



I don't really understand what the implication of the .gif is. Are you asking whether or not VxWorks supports threads? Are you asking if tasks and threads are interchangeable / good enough to be interchangeable?
  #3   Spotlight this post!  
Unread 25-03-2010, 15:01
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,101
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: vxworks

Quote:
Originally Posted by EricVanWyk View Post
I don't really understand what the implication of the .gif is.
The GIF is a screenshot of a web page written 6 years ago by a Jim Collier, purporting to give a top-level overview of vxworks.

http://www.cross-comp.com/instr/page...sTutorial.aspx

Quote:
Are you asking whether or not VxWorks supports threads? Are you asking if tasks and threads are interchangeable / good enough to be interchangeable?
Not specifically, no.

I was asking if the overview summary of vxworks written by Jim Collier is still correct, six years after he wrote it. Or perhaps it wasn't correct in March of 2004 when it was written.

~
  #4   Spotlight this post!  
Unread 25-03-2010, 15:15
wireties's Avatar
wireties wireties is offline
Principal Engineer
AKA: Keith Buchanan
FRC #1296 (Full Metal Jackets)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2004
Location: Rockwall, TX
Posts: 1,170
wireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond repute
Send a message via AIM to wireties
Re: vxworks

It is close, but not entirely correct in 2004 or now. There are 5 states:

pending - blocked forever waiting on a system resource
delayed - blocked for a number of system ticks
pending & delayed - blocked for a maximum number of system ticks waiting on a system resource
ready - ready to run
running - of all the ready tasks, the one picked by the scheduling algorithm to run - note that vxworks schedules tasks (w/o regard to which RTP or the kernel where the task resides), not processes

in addition there is a suspended shadow state correlating to the pening/delayed/pending&delayed/ready states - in other words vxworks keeps track of what state a pending task would be in if you resumed it

the version of vxworks we run supports threads (called tasks in vxworks) and processes (called real-time processes) - the FIRST examples run entirely in multiple tasks inside the kernel, they do not use RTPs and I'm not sure they are enabled - so all the FIRST code runs inside the same memory context (thus the code we run can whack other tasks and the kernel itself so be careful!)

Hope this helps
  #5   Spotlight this post!  
Unread 25-03-2010, 15:36
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,101
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: vxworks

Quote:
Originally Posted by wireties View Post
Hope this helps
Thanks for posting. As time permits, I'm going to ponder what you have written and try to square it with other input I have received elsewhere.


~
  #6   Spotlight this post!  
Unread 25-03-2010, 19:00
Ken Streeter's Avatar
Ken Streeter Ken Streeter is offline
Let the MAYHEM begin!
FRC #1519 (Mechanical Mayhem)
Team Role: Engineer
 
Join Date: Feb 2005
Rookie Year: 2005
Location: Team: Milford, NH; Me: Bedford, NH
Posts: 471
Ken Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond reputeKen Streeter has a reputation beyond repute
Re: vxworks

Quote:
Originally Posted by wireties View Post
the version of vxworks we run supports threads (called tasks in vxworks) and processes (called real-time processes) - the FIRST examples run entirely in multiple tasks inside the kernel, they do not use RTPs and I'm not sure they are enabled - so all the FIRST code runs inside the same memory context (thus the code we run can whack other tasks and the kernel itself so be careful!)
Your speculation that RTPs are not enabled in the vxWorks kernel running on the cRIO is correct. The vxWorks running on the cRIO requires all tasks to be run as "kernel tasks" sharing the same memory space (and thus without the resultant protections from one another.)
__________________
Ken Streeter - Team 1519 - Mechanical Mayhem (Milford Area Youth Homeschoolers Enriching Minds)
2015 NE District Winners with 195 & 2067, 125 & 1786, 230 & 4908, and 95 & 1307
2013 World Finalists & Archimedes Division Winners with 33 & 469
2013 & 2012 North Carolina Regional Winners with teams 435 & 4828 and 1311 & 2642
2011, 2010, 2006 Granite State Regional Winners with teams 175 & 176, 1073 & 1058, and 1276 & 133
Team 1519 Video Gallery - including Chairman's Video, and the infamous "Speed Racer!"
  #7   Spotlight this post!  
Unread 25-03-2010, 22:19
gvarndell's Avatar
gvarndell gvarndell is offline
Software Engineer
AKA: Addi's and Georgie's Dad
FRC #1629 (GaCo)
Team Role: Parent
 
Join Date: Jan 2009
Rookie Year: 2008
Location: Grantsville, Maryland
Posts: 350
gvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond repute
Re: vxworks

Quote:
Originally Posted by Ether View Post
It's a bit dated...
Can anyone with vxworks knowledge comment?
The diagram you posted is almost identical to the diagram one would find in the "vxWorks Kernel Programmer's Guide" -- if one looked at it.

You can view this document as web pages by bringing up 'Help' in Workbench.
You can also view it as a pdf, which you should find approximately here.

C:\WindRiver\docs\extensions\eclipse\plugins\com.w indriver.ide.doc.vxworks\vxworks_kernel_programmer s_guide_6.* <- '*' would be '3' for you.
__________________
Robots never, ever, ever, ever break -- The Robot Repairman (Backyardigans)
  #8   Spotlight this post!  
Unread 25-03-2010, 22:30
gvarndell's Avatar
gvarndell gvarndell is offline
Software Engineer
AKA: Addi's and Georgie's Dad
FRC #1629 (GaCo)
Team Role: Parent
 
Join Date: Jan 2009
Rookie Year: 2008
Location: Grantsville, Maryland
Posts: 350
gvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond reputegvarndell has a reputation beyond repute
Re: vxworks

Quote:
Originally Posted by wireties View Post
It is close, but not entirely correct in 2004 or now. There are 5 states:

pending - blocked forever waiting on a system resource
delayed - blocked for a number of system ticks

etc., etc.
See the section entitled "Tasks and Multitasking" in...

C:\WindRiver\docs\extensions\eclipse\plugins\com.w indriver.ide.doc.vxworks\vxworks_kernel_programmer s_guide_6.3

Not that your paraphrasing of the information there is wrong, there's just more there.

Also note that tasks are ready, pended, running, or suspended.
The other states have more to do with why a task is pended or suspended.
__________________
Robots never, ever, ever, ever break -- The Robot Repairman (Backyardigans)
  #9   Spotlight this post!  
Unread 03-04-2010, 22:45
wireties's Avatar
wireties wireties is offline
Principal Engineer
AKA: Keith Buchanan
FRC #1296 (Full Metal Jackets)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2004
Location: Rockwall, TX
Posts: 1,170
wireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond reputewireties has a reputation beyond repute
Send a message via AIM to wireties
Re: vxworks

I reckon it does not matter but I am pretty sure I am correct about the task states, It certainly does not matter to students programming FIRST robots. I taught engineers how to use VxWorks for 15+ years and the info I passed on is directly from the Wind River training presentations. The diagram from the 6.X users manual is a dumbed-down version.

If you think about it the distinction between pending, pending and delayed and just delayed is important. Making the kernel check every pending and every delayed task can be done in a deterministic manner no matter how many tasks are present in the system. Tasks that are both pending and waiting are sorted in 2 different ways (by relative time and priority or fifo) and complicate the algorithm, thus they are treated as a special case (or state) in the kernel.

Hope this helps
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
CAN Jaguar code set up as a VxWorks Library taichichuan CAN 0 21-02-2010 22:16
vxWorks networking quirks? virtuald C/C++ 2 18-04-2009 18:51
VxWorks Kernel Cadyyan C/C++ 6 04-04-2009 19:37
Disassemble VxWorks (WindRiver) ELF Binaries? GeneralFailure C/C++ 5 20-01-2009 19:41


All times are GMT -5. The time now is 23:07.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi