Firmware-Guide
Firmware Guide
https://github.com/mikeroyal/Firmware-Guide
Last synced: 6 days ago
JSON representation
-
C/C++ Learning Resources
- C - purpose, high-level language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. It supports structured programming, lexical variable scope, and recursion, with a static type system. C also provides constructs that map efficiently to typical machine instructions, which makes it one was of the most widely used programming languages today.
- Embedded C - committee) to address issues that exist between C extensions for different [embedded systems](https://en.wikipedia.org/wiki/Embedded_system). The extensions hep enhance microprocessor features such as fixed-point arithmetic, multiple distinct memory banks, and basic I/O operations. This makes Embedded C the most popular embedded software language in the world.
- C & C++ Developer Tools from JetBrains
- Open source C++ libraries on cppreference.com
- C++ Graphics libraries
- C++ Libraries in MATLAB
- Google C++ Style Guide
- Introduction C++ Education course on Google Developers
- C++ style guide for Fuchsia
- Chromium C++ Style Guide
- C++ Core Guidelines
- C++ Style Guide for ROS
- Learn C++
- Learn C : An Interactive C Tutorial
- C++ Online Training Courses on LinkedIn Learning
- C++ Tutorials on W3Schools
- Learn C Programming Online Courses on edX
- Learn C++ with Online Courses on edX
- Learn C++ on Codecademy
- Coding for Everyone: C and C++ course on Coursera
- C++ For C Programmers on Coursera
- C++ Online Courses on Udemy
- Top C Courses on Udemy
- C++ For Programmers Course on Udacity
- C++ Fundamentals Course on Pluralsight
- C++ - platform language that can be used to build high-performance applications developed by Bjarne Stroustrup, as an extension to the C language.
- C++ Tools and Libraries Articles
- C++ Style Guide for ROS
-
C/C++ Tools
- Visual Studio Code
- ReSharper C++
- AppCode - fixes to resolve them automatically. AppCode provides lots of code inspections for Objective-C, Swift, C/C++, and a number of code inspections for other supported languages. All code inspections are run on the fly.
- CLion - platform IDE for C and C++ developers developed by JetBrains.
- Code::Blocks
- Conan
- High Performance Computing (HPC) SDK
- Boost - edge C++. Boost has been a participant in the annual Google Summer of Code since 2007, in which students develop their skills by working on Boost Library development.
- Automake
- Cmake - source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your choice.
- GDB
- GCC - C, Fortran, Ada, Go, and D, as well as libraries for these languages.
- GSL - squares fitting. There are over 1000 functions in total with an extensive test suite.
- OpenGL Extension Wrangler Library (GLEW) - platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform.
- Libtool
- Maven
- TAU (Tuning And Analysis Utilities) - based sampling. All C++ language features are supported including templates and namespaces.
- Clang - C, C++ and Objective-C++ compiler when targeting X86-32, X86-64, and ARM (other targets may have caveats, but are usually easy to fix). Clang is used in production to build performance-critical software like Google Chrome or Firefox.
- OpenCV - time applications. Cross-Platform C++, Python and Java interfaces support Linux, MacOS, Windows, iOS, and Android.
- Oat++ - efficient web application. It's zero-dependency and easy-portable.
- Cython
- Infer - C, and C. Infer is written in [OCaml](https://ocaml.org/).
- Vcpkg
- CppSharp
- Thrust - level interface greatly enhances programmer productivity while enabling performance portability between GPUs and multicore CPUs. Interoperability with established technologies such as CUDA, TBB, and OpenMP integrates with existing software.
- JavaCPP
- Spdlog - only/compiled, C++ logging library.
-
C# Learning Resources
- C# programming with Visual Studio Code
- Advanced Topics in C# by Udemy
- The complete C# tutorial
- Unity C# Survival Guide
- RabbitMQ .NET/C# Client API
- C# - oriented programming language developed by Microsoft to write any application using the C# programming language on the .NET platform.
- C# Tutorial by W3Schools
- Learning C#
-
.NET Learning Resources
-
Networking Tools & Concepts
- cURL - line tool for transferring data using various network protocols(HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP or SMTPS). cURL is also used in cars, television sets, routers, printers, audio equipment, mobile phones, tablets, settop boxes, media players and is the Internet transfer engine for thousands of software applications in over ten billion installations.
- cURL Fuzzer
- DoH - alone application for DoH (DNS-over-HTTPS) name resolves and lookups.
- HTTPStat
- Wuzz
- Websocat - line client for WebSockets, like netcat (or curl) for ws:// with advanced socat-like functions.
- HTTPie - line HTTP client. Its goal is to make CLI interaction with web services as human-friendly as possible. HTTPie is designed for testing, debugging, and generally interacting with APIs & HTTP servers.
-
Network Learning Resources
- AWS Certified Security - Specialty Certification
- Cisco Security Certifications
- The Red Hat Certified Specialist in Security: Linux
- Linux Professional Institute LPIC-3 Enterprise Security Certification
- Citrix Certified Associate – Networking(CCA-N)
- Citrix Certified Professional – Virtualization(CCP-V)
- CCNP Routing and Switching
- Certified Information Security Manager(CISM)
- Wireshark Certified Network Analyst (WCNA)
- Networking courses and specializations from Coursera
- Network & Security Courses from Udemy
- Network & Security Courses from edX
- Google Cloud Certified Professional Cloud Security Engineer
- Juniper Networks Certification Program Enterprise (JNCP)
- Cisco Security Certifications
- Cybersecurity Courses and Certifications by Offensive Security
- Linux Professional Institute LPIC-3 Enterprise Security Certification
-
Network Protocols
- OAuth 2.0 - party applications to access the user account.
- Assembly - level programming language. It uses mnemonic codes and labels to represent machine-level code with each instruction corresponding to just one machine operation.
- RISC-V Foundation - profit corporation controlled by its 500 members(NVIDIA, Google, Samsung, Raspberry Pi, SiFive, Canonical, and Western Digital) to drive forward the adoption and implementation of the free and open RISC-V instruction set architecture (ISA).
- Intel® 64 and IA-32 Architectures Software Developer’s Manual
- x86 Assembly Language Reference Manual for Open Solaris
- AMD64 Architecture Programmer’s Manual Volume 1-5
- AMD Developer Guides, Manuals, and ISA Documents
- Assembler language from IBM
- The Assembler language on z/OS from IBM
- MIPS Architecture & Technology from Wave Computing
- Assemblies in .NET
- Microsoft Macro Assembler reference
- Compiler Intrinsics and Assembly Language from Microsoft
- x86 and amd64 instruction Reference
- Intro to x86 Assembly Language Programming
- Learn Assembly Programming courses on Udemy
- Intro to Assembly Language from MIT
- Arm Instruction Emulator (ArmIE)
- FASM (flat assembler) - based assembly language on the IA-32 and x86-64 computer architectures.
- Microsoft Assembler (MASM) for x64
- NASM
- GAS - end of GCC. It is used to assemble the GNU operating system and the Linux kernel.
- MIPS - acquired-by-ai-startup-wave-computing/).
- LLVM - end(parser and lexer) and a back-end (code that converts LLVM's representation to actual machine code).
- TinyGo - line tools.
- PlatformIO - in. It provides support for multiplatforms and frameworks such as IoT, Arduino, CMSIS, ESP-IDF, FreeRTOS, libOpenCM3, mbed OS, Pulp OS, SPL, STM32Cube, Zephyr RTOS, ARM, AVR, Espressif (ESP8266/ESP32), FPGA, MCS-51 (8051), MSP430, Nordic (nRF51/nRF52), NXP i.MX RT, PIC32, RISC-V.
- PlatformIO for VSCode
- MASM/TASM - player.
- Keystone - platform, multi-architecture(Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) assembler framework.
- Unicorn - platform, multi-architecture CPU emulator framework(ARM, AArch64, M68K, Mips, Sparc, X86) based on [QEMU](https://www.qemu.org/).
- The Assembler language on z/OS from IBM
- AMD GPU ISA documentation
- Assembler language from IBM
- Arm Instruction Emulator (ArmIE)
- Tock - M and RISC-V based embedded platforms. Tock's design centers around protection, both from potentially malicious applications and from device drivers.
- LLVM - end(parser and lexer) and a back-end (code that converts LLVM's representation to actual machine code).
- Microsoft Assembler (MASM) for x64
- MASM/TASM - player.
-
Operating System
- Rust on Chrome OS
- Bottlerocket OS - source Linux-based operating system meant for hosting containers. Bottlerocket focuses on security and maintainability, providing a reliable, consistent, and safe platform for container-based workloads.
- Writing an OS in Rust - opp).
-
Python Frameworks and Tools
- Python Package Index (PyPI)
- PyCharm
- Django - level Python Web framework that encourages rapid development and clean, pragmatic design.
- Web2py - source web application framework written in Python allowing allows web developers to program dynamic web content. One web2py instance can run multiple web sites using different databases.
- Falcon - performance Python web framework for building large-scale app backends and microservices with support for MongoDB, Pluggable Applications and autogenerated Admin.
- Pillow
- IPython
- Pandas
- Matplotlib - quality figures in a variety of hardcopy formats and interactive environments across platforms.
- Scikit-Learn
- Python Tools for Visual Studio(PTVS)
- Pylance
- Pyright
- AWS Chalice
- Pipenv
- Python Fire
- Bottle - framework for Python. It is distributed as a single file module and has no dependencies other than the [Python Standard Library](https://docs.python.org/library/).
- Neural Network Intelligence(NNI)
- Luigi - in.
- Locust
- spaCy
- PuLP
- Python Tools for Visual Studio(PTVS)
- Sanic
- GraphLab Create - scale, high-performance machine learning models.
-
Python Learning Resources
- CheckiO
- PCPP – Certified Professional in Python Programming 2
- Getting Started with Python in Visual Studio Code
- Google's Python Style Guide
- Google's Python Education Class
- Intro to Python for Data Science
- Intro to Python by W3schools
- Codecademy's Python 3 course
- Learn Python with Online Courses and Classes from edX
- Python Courses Online from Coursera
- The Python Open Source Computer Science Degree by Forrest Knight
- Real Python
-
Rust Learning Resources
-
Rust Tools
- Crater
- Wasmer - integrations).
- Vector - performance, end-to-end (agent & aggregator) observability data platform that puts the user in control of their observability data.
- Chalk - like logic solver.
- stdarch - specific APIs and run-time feature detection.
- Krustlet - and-toleration/). The project is currently experimental.
- Cargo
- VSCode-Rust - either by the official Rust Language Server (RLS) or rust-analyzer, depending on the user's preference. If you don't have it installed, the extension will install it for you (with permission). This extension is built and maintained by the Rust IDEs and editors team with the focus on providing a stable, high quality extension that makes the best use of the respective language server.
- Apache Arrow - memory analytics. It contains a set of technologies that enable big data systems to process and move data fast. Arrow's libraries are available for C, C++, C#, Go, Java, JavaScript, MATLAB, Python, R, Ruby, and Rust.
- Tokio - driven, non-blocking I/O platform for writing asynchronous applications with the Rust programming language.
- TiKV - source distributed transactional key-value database that also provides classical key-vlue APIs, but also transactional APIs with ACID compliance.
- Hyper
- Clippy
- Servo
- RustPython
- Miri - level intermediate representation. It can run binaries and test suites of cargo projects and detect certain classes of undefined behavior. Miri will alsowill also tell you about memory leaks: when there is memory still allocated at the end of the execution, and that memory is not reachable from a global static, Miri will raise an error.
- Simpleinfra
- Rustlings
- Rocket
- Sonic - less search backend similar to Elasticsearch in some use-cases.
-
Security Standards, Frameworks and Benchmarks
Programming Languages
Categories
Network Protocols
38
Security Tools
35
Tools
32
C/C++ Learning Resources
28
C/C++ Tools
27
Python Frameworks and Tools
25
Rust Tools
20
Network Learning Resources
17
Python Learning Resources
12
Security Standards, Frameworks and Benchmarks
9
C# Learning Resources
8
Networking Tools & Concepts
7
Rust Learning Resources
7
Operating System
3
.NET Learning Resources
2
License
1
Sub Categories
Keywords
python
16
rust
11
dotnet
10
security
8
http
6
java
5
c-sharp
5
curl
5
cli
5
cpp
5
visual-studio
4
javascript
3
csharp
3
dotnetcore
3
reverse-engineering
3
framework
3
web
3
c
3
machine-learning
3
linux
3
mono
3
fuzz-testing
2
fuzzer
2
help-wanted
2
mips
2
fuzzing
2
kernel
2
rest
2
powerpc
2
x86-64
2
x86
2
networking
2
windows
2
neural-network
2
microsoft
2
sparc
2
systemz
2
oss-fuzz
2
data-science
2
deep-learning
2
web-framework
2
cncf
2
tracing
2
cpp11
2
devops
2
typescript
2
cplusplus
2
kubernetes
2
xamarin
2
visualization
2