Our config file for lwIP had TCP_QUEUE_OOSEQ disabled - this can cause significant performance problems, as observed during testing. One lost packet can lock an input stream into a mode where the transmitter keeps thinking packets are being lost, so keeps slowing down. This caused test failures - a transfer that would normally take 10s hit a 60s timeout. Turning this on increases code size, but doesn't significantly increase static memory use. The memory used for out-of-order packets comes from the same pbuf pool as for outgoing TCP segments, so there is contention when running bidirectionally. Out-of-order processing is on by default for lwIP - this seems to be another example of us excessively paring it back. |
||
---|---|---|
.github | ||
TESTS | ||
cmsis | ||
drivers | ||
events | ||
features | ||
hal | ||
platform | ||
rtos | ||
targets | ||
tools | ||
.astyleignore | ||
.astylerc | ||
.coveragerc | ||
.gitattributes | ||
.gitignore | ||
.pylintrc | ||
.travis.yml | ||
CONTRIBUTING.md | ||
DOXYGEN_FRONTPAGE.md | ||
Jenkinsfile | ||
LICENSE | ||
LICENSE-BSD-3-Clause | ||
README.md | ||
doxyfile_options | ||
doxygen_options.json | ||
logo.png | ||
mbed.h | ||
requirements.txt |
README.md
Arm Mbed OS is an open source embedded operating system designed specifically for the "things" in the Internet of Things. It includes all the features you need to develop a connected product based on an Arm Cortex-M microcontroller, including security, connectivity, an RTOS and drivers for sensors and I/O devices.
Mbed OS provides a platform that includes:
- Security foundations.
- Cloud management services.
- Drivers for sensors, I/O devices and connectivity.
Release notes
The release notes detail the current release. You can also find information about previous versions.
Getting started for developers
We have a developer website for asking questions, engaging with others, finding information on boards and components, using an online IDE and compiler, reading the documentation and learning about what's new and what's coming next in Mbed OS.
Getting started for contributors
We also have a contributing and publishing guide that covers licensing, contributor agreements and style guidelines.