Security Beyond Memory Safety## +24 ## Security Beyond Memory Safety Using Modern C++ to Avoid Vulnerabilities by Design ## MAX HOFFMANN ## Security Beyond Memory Safety Using Modern C++ to Avoid Vulnerabilities by Design FIFTY YOURSELF IN THE FOOT WITH A RAILGUN FEBRUARY 26, 2024 # Press Release: Future Software Should Be Memory Safe ONCD BRIEFING ROOM PRESS RELEASE Leaders in Industry Support White House Call to Address Root 25 of the past 5 years Weaknesses associated with languages that do not have strong support for memory management or type enforcement. CWE-119, CWE-190, CWE-416, CWE-787, and CWE-476 are in this group0 码力 | 79 页 | 4.15 MB | 1 年前3
A Relaxed Guide to memory_order_relaxed## A Relaxed Guide to memory_order_relaxed Hans Boehm Paul E. McKenney Google Facebook CPPCON 2020 ## std::atomic/std::atomic_ref and memory_order_relaxed - C++ atomic operations are sequentially consistent sacrificing the simple threads-as-interleaving semantics - by passing memory order enum values to explicit atomic operations. - In particular, memory_order_relaxed allows arbitrary visibility reordering with respect respect to accesses to other locations. ## What is Not to Like About memory order relaxed? - Just a load, just a store: Full control, excellent efficiency and scalability! ☐ Assuming aligned machine-sized0 码力 | 32 页 | 278.53 KB | 1 年前3
Installing Ubuntu from a USB memory stickInstalling Ubuntu from a USB memory stick This guide will help you install Ubuntu on your computer by using a USB memory stick. USB memory sticks are sometimes known as flash drives, memory pens or USB Mass Storage Storage devices. Installing from a memory stick is useful if you have a computer without a CD drive (like a netbook), or prefer the convenience of a memory stick. Alternative methods are available, like running Windows. ### 1. What do I need to get started? To install Ubuntu from a USB memory stick you need: - A memory stick with a capacity of at least 2GB. It will be formatted (erased) during this process0 码力 | 3 页 | 128.18 KB | 2 年前3
Object Introspection: A Revolutionary Memory Profiler for C++ Objects## +23 ## Object Introspection: A Revolutionary Memory Profiler for C++ Objects ## JONATHAN HASLAM & ADITYA SARWADE 20 23 October 01 - 06 ## Scene Setting “... functions then provide the basic 2d6739cbe6128deb047eb1259822d6/p4_1.jpg) ## Object Introspection (Ol) Goals - Byte level memory footprint analysis for objects • Complete object type hierarchies • Dynamic allocations and containers object hierarchy from a given root type • Understand the layout in memory of the entire hierarchy • Understand how to interpret data at memory offsets • Understand containers • Compiler generated debug information0 码力 | 62 页 | 2.24 MB | 1 年前3
Practical memory pool based allocators for Modern C++Practical memory pool based allocators for Modern C++ ## PREVIOUSLY ON cppcon • CppCon 2019: Safe Software for Autonomous Mobility With Modern C++ by Andreas Pasternak • Quote: “Memory pools and allocators piece in (more) depth ## Memory allocations in real-time safety-critical environment • The solution should be safe and certifiable • What does it mean practically for C++ memory allocations? We asked Autosar C++ 14 Coding Guidelines regarding memory allocations” ## Autosar C++ guidelines Rule A18-5-5 (required, implementation, partially automated) Memory management functions shall ensure the following:0 码力 | 49 页 | 986.95 KB | 1 年前3
C++ Memory Model: from C++11 to C++23## +23 ## C++ Memory Model: from C++11 to C++23 ## ALEX DATHSKOVSKY ## 20 23 October 01 - 06 ## About Me: SPEEDATA alex.dathskovsky@speedata.io www.linkedin.com/in/alexdathskovsky https://www.cppnext [Image](/uploads/documents/a/b/8/f/ab8f331d7156e1b708cb39698c0a1f00/p3_1.jpg) ## its a conspiracy man ## Memory Model ## I mportant Question ## Does the processor executes the program you wrote? ## The Answer executed by the functional unit - The functional unit writers the result back to the register or memory ## Branch Prediction • predicts if branch is taken • if prediction is wrong flush calculations0 码力 | 112 页 | 5.17 MB | 1 年前3
The Zig Programming Language 0.7.1 Documentationoptimal, and reusable software. • Robust - behavior is correct even for edge cases such as out of memory. • Optimal - write programs the best way they can behave and perform. • Reusable - the same code writes 0xaa bytes to undefined memory. This is to catch bugs early, and to help detect use of undefined memory in a debugger. ## V ariables A variable is a unit of Memory storage. Variables are never tests passed. Pointers work at compile-time too, as long as the code does not depend on an undefined memory layout: ### test.zig const expect = @import("std").testing.expect; test "comptime0 码力 | 225 页 | 5.74 MB | 2 年前3
Kotlin Language Documentation 1.9.20Compile and run the example on Windows 719 Next steps 719 Kotlin/Native memory management 720 Garbage collector 720 Memory consumption 720 Unit tests in the background 721 What's next 722 725 Migrate to the new memory manager ..... 725 .Update Kotlin ..... 726 Update dependencies ..... 726 Update your code ..... 726 Support both new and legacy memory managers ..... 727 What's Kotlin/Native FAQ ..... 736 How do I run my program? ..... 736 What is Kotlin/Native memory management model? ..... 736 How do I create a shared library? ..... 737 How do I create0 码力 | 1299 页 | 32.44 MB | 2 年前3
The Zig Programming Language 0.8.1 Documentationoptimal, and reusable software. • Robust - behavior is correct even for edge cases such as out of memory. • Optimal - write programs the best way they can behave and perform. • Reusable - the same code writes 0xaa bytes to undefined memory. This is to catch bugs early, and to help detect use of undefined memory in a debugger. ## V ariables A variable is a unit of Memory storage. Variables are never tests passed. Pointers work at compile-time too, as long as the code does not depend on an undefined memory layout: ### test.zig const expect = @import("std").testing.expect; test "comptime0 码力 | 234 页 | 6.01 MB | 2 年前3
CppCon 2021: Persistent Data Structures|0000|00000|0000||| |000|000000|000000||| |0000|0000|000000||| ## Overview Introduction Persistent Memory Use-Cases Pitfalls Persistent Hash Map Design Goals and Methodology Persistence Performance |000|000000|000000||| |000|0000|000000||| ## I ntroduction ## Persistent Memory ▶ Persistent Memory is positioned as a new tier in the memory hierarchy that delivers capacity of non-volatile storage at speeds latencies closer to DRAM than storage ▶ Persistent memory is commercially available through Intel $ ^{®} $ Optane $ ^{TM} $ DC Persistent Memory |Introduction|Persistent Hash Map|Persistent Transactional0 码力 | 56 页 | 1.90 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100
相关搜索词
Memory SafetyModern C++VulnerabilitiesRecallCybersecuritymemory_order_relaxedC++20OOTARFUBatomic operationsUbuntuUSB memory stickinstallerBIOSdual-boot setupObject IntrospectionMemory ProfilerType ReconstructionCode GenerationDebug Info内存池分配器C++标准内存池生成内存池实例C++内存模型原子操作内存顺序数据依赖性编译器重排heap allocation failurerecursionmemoryAllocatorZig Build SystemK2 compilerKotlin/Nativememory allocatorGradleKotlin MultiplatformHeap Allocation FailureRecursionLifetime and OwnershipBuild SystemPersistent Data StructuresConcurrencyPersistenceTransactional MemoryOptane Persistent Memory













