Comments (3)
Hi Anime117, I'm a bit fuzzy on the specifics, but here's a short intro: https://github.com/tass-belgium/picotcp/wiki/scheduler-internals
Here you can find the implementation details:
Line 747 in 46120ab
Every tick will attempt to process all layers, starting from the device (for incoming data) to the socket and back (for outgoing). I do believe it's possible to have a 'frame' processed in one single tick, but in general you're better off to keep ticking away when your device is online in your event loop; because you might miss out on packets in your hardware buffer if you don't process these in time.
from picotcp.
An alternative would be to compile this fork using TICKLESS=1
option, and use pico_stack_go()
instead. This function will execute all the pending actions to process the packets, and return the number of milliseconds until the expiration of the next internal timer. TICKLESS
option can be useful to save CPU cycles by avoiding to call pico_stack_tick()
repeatedly if no actions are pending.
from picotcp.
@danielinux , @phalox thanks for the answer. Another question, do you know of any existing product that uses picotcp ? I want to have some tests upon an existing product to see how the stack fares according to those tests in a real world scenario .
from picotcp.
Related Issues (20)
- pico_socket_read() with timeout HOT 1
- pico_ipv4_route_add() is not correctly adding the gateway HOT 1
- Memory leak in SNTP sync HOT 3
- RAW_SOCKET pendant? HOT 2
- TFTP retries not working
- README.md: GPL LICENSE problem HOT 2
- ARP frames are never set unreachable HOT 5
- tcpecho refuses connection ... HOT 1
- tcpopt_len_check will stop the stack when option length is 0 HOT 1
- No 'extern "C"' support in headers HOT 2
- Best way to report security issues HOT 1
- Use picotcp without sockets? HOT 2
- security contact
- connect tcpserver and tcpclient via taps interface
- send from tcpclient and receive in tcpserver
- picoapp icmp6 ping failed
- Reassigned a value before the old one has been used.
- Checking if unsigned variable is less than zero.
- Weak references not working correctly under Windows with MinGW HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from picotcp.