This episode discusses value passing and register reuse, breakpoint execution commands, WinDbg pseudo-registers and scripting, passing data between breakpoints, platform independent commands, logging window messages and module load events.
The open source motion control software Machinekit has excellent Python bindings for different API. Machinetalk, the middleware stack, pymachinetalk, the client API for Machinetalk and the Python configuration API.
Learn more at https://machinekoder.com/ and http://machinekit.io
Sublime Text 2 is a cross between a text editor and IDE. It is known for its speed, multiple cursors feature, fuzzy search, code minimap, and large plugin community. Key benefits include being lightweight, having time-saving features like snippets, and extensive shortcut keys. Package Control can be used to easily install additional plugins. Basic tips include using Ctrl-P to go to files/methods and Ctrl-Shift-P to access commands.
This document summarizes the MazuV-Debug-System project which implements RISC-V debug specification version 0.13 to enable debugging of a PicoRV32 CPU on a Lattice FPGA board. The debug system uses a Debug Module (DM) to handle debug commands from a Debug Test Module (DTM) over UART, allowing commands from GDB via OpenOCD to halt, step, and read/write registers of the CPU. While it can perform basic debugging tasks, hardware breakpoints and watchpoints are not yet supported.
The document discusses the Linux kernel and its components. It covers topics like the kernel structure, Ethernet and wireless access in the kernel, USB and networking functionality in Linux. It provides code snippets to explain concepts like function calls and flow in the kernel for tasks like initiating and receiving network data.
Penetration testing in the cloud can be conducted on public, private (owner), and private (tenant) clouds. Some key challenges include that cloud service providers have strong security but guests are responsible for their own protection, and penetration tests cannot affect other tenants. For private clouds, spoofing, port scanning, man-in-the-middle attacks, and denial-of-service attacks are possible risks. Commercial tools and policies from cloud service providers can aid in conducting safe and effective penetration tests in the cloud.
The document discusses a cluster-wide label ID table that allows for efficient policy enforcement across frontend, backend, and load balancer systems. A single hash table lookup is needed regardless of policy complexity thanks to an ID carried in network packets. Benchmark results show the approach can efficiently handle everything from small HTTP requests to ultra HD videos even with 10,000 policies on a 24-core server.
This document discusses the Common Clock Framework (CCF) and plans for Dynamic Voltage and Frequency Scaling (DVFS) support. It notes that CCF has been adopted by many platforms and has DT bindings for common clocks. It outlines open issues with the framework. The document proposes allowing CCF APIs to re-enter themselves, enabling DVFS via rate change notifiers. It provides code examples and discusses using notifiers and regulators to handle voltage scaling during rate changes. Finally, it asks for feedback on topics like how to represent operating points and how to group related rate changes for DVFS transitions.
The open source motion control software Machinekit has excellent Python bindings for different API. Machinetalk, the middleware stack, pymachinetalk, the client API for Machinetalk and the Python configuration API.
Learn more at https://machinekoder.com/ and http://machinekit.io
Sublime Text 2 is a cross between a text editor and IDE. It is known for its speed, multiple cursors feature, fuzzy search, code minimap, and large plugin community. Key benefits include being lightweight, having time-saving features like snippets, and extensive shortcut keys. Package Control can be used to easily install additional plugins. Basic tips include using Ctrl-P to go to files/methods and Ctrl-Shift-P to access commands.
This document summarizes the MazuV-Debug-System project which implements RISC-V debug specification version 0.13 to enable debugging of a PicoRV32 CPU on a Lattice FPGA board. The debug system uses a Debug Module (DM) to handle debug commands from a Debug Test Module (DTM) over UART, allowing commands from GDB via OpenOCD to halt, step, and read/write registers of the CPU. While it can perform basic debugging tasks, hardware breakpoints and watchpoints are not yet supported.
The document discusses the Linux kernel and its components. It covers topics like the kernel structure, Ethernet and wireless access in the kernel, USB and networking functionality in Linux. It provides code snippets to explain concepts like function calls and flow in the kernel for tasks like initiating and receiving network data.
Penetration testing in the cloud can be conducted on public, private (owner), and private (tenant) clouds. Some key challenges include that cloud service providers have strong security but guests are responsible for their own protection, and penetration tests cannot affect other tenants. For private clouds, spoofing, port scanning, man-in-the-middle attacks, and denial-of-service attacks are possible risks. Commercial tools and policies from cloud service providers can aid in conducting safe and effective penetration tests in the cloud.
The document discusses a cluster-wide label ID table that allows for efficient policy enforcement across frontend, backend, and load balancer systems. A single hash table lookup is needed regardless of policy complexity thanks to an ID carried in network packets. Benchmark results show the approach can efficiently handle everything from small HTTP requests to ultra HD videos even with 10,000 policies on a 24-core server.
This document discusses the Common Clock Framework (CCF) and plans for Dynamic Voltage and Frequency Scaling (DVFS) support. It notes that CCF has been adopted by many platforms and has DT bindings for common clocks. It outlines open issues with the framework. The document proposes allowing CCF APIs to re-enter themselves, enabling DVFS via rate change notifiers. It provides code examples and discusses using notifiers and regulators to handle voltage scaling during rate changes. Finally, it asks for feedback on topics like how to represent operating points and how to group related rate changes for DVFS transitions.
PWM based motor speed control using LPC 1768Omkar Rane
This code configures the LPC1768 microcontroller's PWM peripheral to generate a pulse width modulated signal on pin PWM1.5. It initializes the PWM timer and match registers, enables the PWM output, and then uses a for loop to incrementally change the duty cycle of the PWM signal from 10% to 100% over 10 steps, pausing 1 second between each step. This allows the user to see the PWM output change frequency smoothly over time.
CAN interfacing on LPC1768 (ARM Cortex M3 based Micro controller)Omkar Rane
The document describes code for initializing and transmitting messages over a CAN bus on an LPC1768 microcontroller, including initializing the CAN controller, setting an acceptance filter to define which message IDs will be received, and sending a test message over CAN1 while monitoring reception on CAN2. Functions are defined for CAN initialization, setting the acceptance filter, and transmitting messages with given IDs and data over CAN1.
The document discusses QEMU networking and virtual network devices. It covers backend network stacks like SLiRP and TAP, frontend virtual network devices like e1000 and virtio-net, and how to configure networking using -net, -netdev, and -nic options. It also provides a high-level overview of the packet flow between the guest and host, including using eventfds and irqfds to handle interrupts.
The document discusses decoding a LoRaWAN packet received at a gateway. It provides steps to:
1) Use an online tool to decode the base64 encoded packet and obtain the PHYPayload
2) Use a Python script along with the PHYPayload, dev address, and key to decrypt the payload and obtain a string of decimal values
3) Convert the decimal values to hexadecimal to reveal the original message of "hello world".
DevDay: CordaCoin A Permissionless Cryptocurrency on Corda, R3R3
This document summarizes the key aspects of Corda Coin, an experimental blockchain protocol built on Corda. It describes the basic entities like Block, LinearState, and FungibleToken. It provides examples of transactions like coinbase rewards and spends. It also outlines the probabilistic finality approach using mining nodes and priority queues. Known issues and areas for future exploration are discussed, such as adding metadata for reversals and using Merkle trees instead of transaction hashes.
Roy Wasse is a Dutch JUG leader and co-founder of OpenValue who is interested in technological change. The document discusses various cryptographic techniques including the one-time pad encryption method, stream ciphers, hashing versus encryption, block ciphers, asymmetric encryption using elliptic curves, quantum key distribution, and various applications like mixing services and onion routing for anonymity. It also touches on concepts like commitment schemes, zero-knowledge proofs, scriptless transactions in Mimblewimble, and using digital signatures to unlock content.
This document summarizes several different types of consensus mechanisms or "proofs" used in blockchain networks, including Proof of Work, Proof of Stake, Delegated Proof of Stake, Proof of Burn, Proof of Storage, Proof of Elapsed Time, Proof of Authority, Proof of Replication, Federated Byzantine Agreement, and Proof of Bandwidth. For each type, it provides a brief description and sometimes examples of cryptocurrencies that use that particular mechanism.
Advanced Evasion Techniques by Win32/GapzAlex Matrosov
The document discusses advanced evasion techniques used by the Win32/Gapz malware. It describes how Gapz uses droppers, bootkits, and rootkit functionality for stealthy infection. The dropper uses PowerLoader and code injection into explorer.exe to bypass detection. The bootkit modifies the MBR and VBR to load at early boot stages. The rootkit implements hidden storage, process injection, and covert network communication channels.
This document discusses SD card standards and specifications. It describes the SD card pin definitions, speed modes, bus widths, and register maps. It also provides an overview of the Linux SD device driver stack, including the block driver, file systems, and individual driver components like the host controller and core driver. Code examples are provided for registering hardware resources and accessing register structures through readl/writel functions.
Remote code execution in restricted windows environmentsBorja Merino
This document discusses techniques for remote code execution in restricted Windows environments, specifically focusing on stagers. A stager is shellcode responsible for fetching and executing the next stage, such as malware or an implant. The document provides examples of open source stagers and frameworks that can be reused for implants. It also covers transport protocols, techniques for socket hunting to reuse existing connections, and drawbacks of "universal" stagers that try to be exploit agnostic.
Beginning direct3d gameprogramming01_20161102_jintaeksJinTaek Seo
This document provides an overview and code samples for creating a basic Direct3D game in C++ using Windows. It discusses how to initialize Direct3D, create a rendering device, handle window messages, and perform basic rendering like clearing the backbuffer. Code examples demonstrate how to set up a window class, register it, create a device, and include a message loop that calls the render function. The document also provides examples of drawing a line and modifying the clear color over time.
Sylvain Baubeau presents Skydive, a real-time network analyzer that provides troubleshooting and monitoring of complex SDN environments. Skydive captures network topology and traffic flows to analyze performance issues. It supports OpenFlow, OpenStack, Kubernetes, and is designed to be flow-centric, lightweight, API-driven and SDN-agnostic. Skydive aims to help network operators detect issues, understand traffic patterns, and perform capacity planning.
The document discusses vectorization techniques on x86 processors. It describes how vectorization can significantly improve performance by processing multiple data elements in parallel using SIMD instructions. Vectorization is most effective when combined with multithreading. The document outlines several techniques for writing vectorized code, including using vector instruction sets like SSE and AVX, compiler auto-vectorization and vectorization directives. It also discusses challenges like memory alignment and dependency analysis that compilers have to handle for effective vectorization.
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...CODE BLUE
This document discusses the results of long-term scanning and analysis of Winnti 4.0 and ShadowPad malware command and control (C2) protocols. It finds that Winnti 4.0 C2s primarily use TLS, HTTPS, and HTTP, while ShadowPad variants primarily use TCP, HTTPS, and HTTP. Analysis of the protocols reveals encryption methods, packet structures, and server-side functionality. Over time, the number and distribution of active C2s changed, likely in response to research publications and incident response actions. The document advocates for anonymization techniques and merits and risks of future research publications.
This document discusses using Wireshark to debug GlusterFS network traffic. It provides an overview of Wireshark, how to capture GlusterFS packets, identify the basic GlusterFS protocols, and build filters. Specific examples are given to identify packets from a client to a GlusterFS brick, determine which volume and server the brick is on, and filter on process ID, user ID, and RPC procedures. Statistics collection and decrypting SSL traffic are also briefly covered.
Mateusz 'j00ru' Jurczyk - Windows Kernel Trap Handler and NTVDM Vulnerabiliti...DefconRussia
The document describes vulnerabilities found in the Windows kernel trap handlers and NTVDM subsystem. It provides a case study of vulnerabilities disclosed in MS13-063, including CVE-2013-3196 which allowed a write-what-where condition in the nt!PushInt handler due to improper validation of operands during emulation of 16-bit instructions. The document also covers prior research on NTVDM vulnerabilities and the architecture of legacy software execution in Windows, highlighting the complex kernel interfaces and large attack surface involved in supporting older programs.
The document discusses using jcmd to troubleshoot Java applications. It provides an overview of the jcmd command and describes the various domains and suffixes that can be used with jcmd to obtain diagnostic information or control the JVM. These include getting thread dumps, heap details, JIT compiler data, and configuring Java logging. The document also demonstrates some example jcmd commands.
Проведение криминалистической экспертизы и анализа руткит-программ на примере...Alex Matrosov
This document summarizes a presentation on analyzing the Win32/Olmarik(TDL4) rootkit through forensic examination and debugging techniques. It discusses the evolution of rootkits from x86 to x64 systems and techniques used by TDL rootkits to bypass security protections like driver signature enforcement. It also demonstrates tools like TdlFsReader that were developed to analyze the hidden TDL file system and decrypt encrypted files.
Positive Hack Days. Матросов. Мастер-класс: Проведение криминалистической экс...Positive Hack Days
В рамках мастер-класса будет рассмотрены следующие вопросы:
методы внедрения и работы руткита TDL4;
инструментарий и методы сбора данных для проведения криминалистической экспертизы зараженной машины;
отладка буткит-составляющей на ранней стадии загрузки системы с использованием эмулятора Bochs;
анализ зараженной машины при помощи WinDbg;
удаление руткита из системы после сбора всех необходимых данных.
JS Fest 2018. Володимир Шиманський. Запуск двіжка JS на мікроконтролеріJSFestUA
JavaScript - усюди! Тільки нещодавно запускав один і той самий JS код в Browser, Node.js, та React Native, як уже новий виклик - Embedded системи… Спокійно, JS справиться! На цій доповіді ви дізнаєтесь, які двіжки JS працюють в дуже обмежених середовищах, хто і як це використовує в продакшні та наскільки весело розробляти софт під всякі залізяки на JS.
[Спойлер] Якщо все вийде, спробуємо відтворити мелодію Mario на звичайному Bluetooth-брелку для ключів :)
PWM based motor speed control using LPC 1768Omkar Rane
This code configures the LPC1768 microcontroller's PWM peripheral to generate a pulse width modulated signal on pin PWM1.5. It initializes the PWM timer and match registers, enables the PWM output, and then uses a for loop to incrementally change the duty cycle of the PWM signal from 10% to 100% over 10 steps, pausing 1 second between each step. This allows the user to see the PWM output change frequency smoothly over time.
CAN interfacing on LPC1768 (ARM Cortex M3 based Micro controller)Omkar Rane
The document describes code for initializing and transmitting messages over a CAN bus on an LPC1768 microcontroller, including initializing the CAN controller, setting an acceptance filter to define which message IDs will be received, and sending a test message over CAN1 while monitoring reception on CAN2. Functions are defined for CAN initialization, setting the acceptance filter, and transmitting messages with given IDs and data over CAN1.
The document discusses QEMU networking and virtual network devices. It covers backend network stacks like SLiRP and TAP, frontend virtual network devices like e1000 and virtio-net, and how to configure networking using -net, -netdev, and -nic options. It also provides a high-level overview of the packet flow between the guest and host, including using eventfds and irqfds to handle interrupts.
The document discusses decoding a LoRaWAN packet received at a gateway. It provides steps to:
1) Use an online tool to decode the base64 encoded packet and obtain the PHYPayload
2) Use a Python script along with the PHYPayload, dev address, and key to decrypt the payload and obtain a string of decimal values
3) Convert the decimal values to hexadecimal to reveal the original message of "hello world".
DevDay: CordaCoin A Permissionless Cryptocurrency on Corda, R3R3
This document summarizes the key aspects of Corda Coin, an experimental blockchain protocol built on Corda. It describes the basic entities like Block, LinearState, and FungibleToken. It provides examples of transactions like coinbase rewards and spends. It also outlines the probabilistic finality approach using mining nodes and priority queues. Known issues and areas for future exploration are discussed, such as adding metadata for reversals and using Merkle trees instead of transaction hashes.
Roy Wasse is a Dutch JUG leader and co-founder of OpenValue who is interested in technological change. The document discusses various cryptographic techniques including the one-time pad encryption method, stream ciphers, hashing versus encryption, block ciphers, asymmetric encryption using elliptic curves, quantum key distribution, and various applications like mixing services and onion routing for anonymity. It also touches on concepts like commitment schemes, zero-knowledge proofs, scriptless transactions in Mimblewimble, and using digital signatures to unlock content.
This document summarizes several different types of consensus mechanisms or "proofs" used in blockchain networks, including Proof of Work, Proof of Stake, Delegated Proof of Stake, Proof of Burn, Proof of Storage, Proof of Elapsed Time, Proof of Authority, Proof of Replication, Federated Byzantine Agreement, and Proof of Bandwidth. For each type, it provides a brief description and sometimes examples of cryptocurrencies that use that particular mechanism.
Advanced Evasion Techniques by Win32/GapzAlex Matrosov
The document discusses advanced evasion techniques used by the Win32/Gapz malware. It describes how Gapz uses droppers, bootkits, and rootkit functionality for stealthy infection. The dropper uses PowerLoader and code injection into explorer.exe to bypass detection. The bootkit modifies the MBR and VBR to load at early boot stages. The rootkit implements hidden storage, process injection, and covert network communication channels.
This document discusses SD card standards and specifications. It describes the SD card pin definitions, speed modes, bus widths, and register maps. It also provides an overview of the Linux SD device driver stack, including the block driver, file systems, and individual driver components like the host controller and core driver. Code examples are provided for registering hardware resources and accessing register structures through readl/writel functions.
Remote code execution in restricted windows environmentsBorja Merino
This document discusses techniques for remote code execution in restricted Windows environments, specifically focusing on stagers. A stager is shellcode responsible for fetching and executing the next stage, such as malware or an implant. The document provides examples of open source stagers and frameworks that can be reused for implants. It also covers transport protocols, techniques for socket hunting to reuse existing connections, and drawbacks of "universal" stagers that try to be exploit agnostic.
Beginning direct3d gameprogramming01_20161102_jintaeksJinTaek Seo
This document provides an overview and code samples for creating a basic Direct3D game in C++ using Windows. It discusses how to initialize Direct3D, create a rendering device, handle window messages, and perform basic rendering like clearing the backbuffer. Code examples demonstrate how to set up a window class, register it, create a device, and include a message loop that calls the render function. The document also provides examples of drawing a line and modifying the clear color over time.
Sylvain Baubeau presents Skydive, a real-time network analyzer that provides troubleshooting and monitoring of complex SDN environments. Skydive captures network topology and traffic flows to analyze performance issues. It supports OpenFlow, OpenStack, Kubernetes, and is designed to be flow-centric, lightweight, API-driven and SDN-agnostic. Skydive aims to help network operators detect issues, understand traffic patterns, and perform capacity planning.
The document discusses vectorization techniques on x86 processors. It describes how vectorization can significantly improve performance by processing multiple data elements in parallel using SIMD instructions. Vectorization is most effective when combined with multithreading. The document outlines several techniques for writing vectorized code, including using vector instruction sets like SSE and AVX, compiler auto-vectorization and vectorization directives. It also discusses challenges like memory alignment and dependency analysis that compilers have to handle for effective vectorization.
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...CODE BLUE
This document discusses the results of long-term scanning and analysis of Winnti 4.0 and ShadowPad malware command and control (C2) protocols. It finds that Winnti 4.0 C2s primarily use TLS, HTTPS, and HTTP, while ShadowPad variants primarily use TCP, HTTPS, and HTTP. Analysis of the protocols reveals encryption methods, packet structures, and server-side functionality. Over time, the number and distribution of active C2s changed, likely in response to research publications and incident response actions. The document advocates for anonymization techniques and merits and risks of future research publications.
This document discusses using Wireshark to debug GlusterFS network traffic. It provides an overview of Wireshark, how to capture GlusterFS packets, identify the basic GlusterFS protocols, and build filters. Specific examples are given to identify packets from a client to a GlusterFS brick, determine which volume and server the brick is on, and filter on process ID, user ID, and RPC procedures. Statistics collection and decrypting SSL traffic are also briefly covered.
Mateusz 'j00ru' Jurczyk - Windows Kernel Trap Handler and NTVDM Vulnerabiliti...DefconRussia
The document describes vulnerabilities found in the Windows kernel trap handlers and NTVDM subsystem. It provides a case study of vulnerabilities disclosed in MS13-063, including CVE-2013-3196 which allowed a write-what-where condition in the nt!PushInt handler due to improper validation of operands during emulation of 16-bit instructions. The document also covers prior research on NTVDM vulnerabilities and the architecture of legacy software execution in Windows, highlighting the complex kernel interfaces and large attack surface involved in supporting older programs.
The document discusses using jcmd to troubleshoot Java applications. It provides an overview of the jcmd command and describes the various domains and suffixes that can be used with jcmd to obtain diagnostic information or control the JVM. These include getting thread dumps, heap details, JIT compiler data, and configuring Java logging. The document also demonstrates some example jcmd commands.
Проведение криминалистической экспертизы и анализа руткит-программ на примере...Alex Matrosov
This document summarizes a presentation on analyzing the Win32/Olmarik(TDL4) rootkit through forensic examination and debugging techniques. It discusses the evolution of rootkits from x86 to x64 systems and techniques used by TDL rootkits to bypass security protections like driver signature enforcement. It also demonstrates tools like TdlFsReader that were developed to analyze the hidden TDL file system and decrypt encrypted files.
Positive Hack Days. Матросов. Мастер-класс: Проведение криминалистической экс...Positive Hack Days
В рамках мастер-класса будет рассмотрены следующие вопросы:
методы внедрения и работы руткита TDL4;
инструментарий и методы сбора данных для проведения криминалистической экспертизы зараженной машины;
отладка буткит-составляющей на ранней стадии загрузки системы с использованием эмулятора Bochs;
анализ зараженной машины при помощи WinDbg;
удаление руткита из системы после сбора всех необходимых данных.
JS Fest 2018. Володимир Шиманський. Запуск двіжка JS на мікроконтролеріJSFestUA
JavaScript - усюди! Тільки нещодавно запускав один і той самий JS код в Browser, Node.js, та React Native, як уже новий виклик - Embedded системи… Спокійно, JS справиться! На цій доповіді ви дізнаєтесь, які двіжки JS працюють в дуже обмежених середовищах, хто і як це використовує в продакшні та наскільки весело розробляти софт під всякі залізяки на JS.
[Спойлер] Якщо все вийде, спробуємо відтворити мелодію Mario на звичайному Bluetooth-брелку для ключів :)
Kernel Recipes 2015: Anatomy of an atomic KMS driverAnne Nicolas
The DRM and KMS APIs have won in the Linux graphics ecosystem. Long gone are the days when KMS meant only a handful of desktop graphics drivers. As a side effect, new problems have been uncovered, and API extensions are being designed to address advanced use cases. Atomic updates is the latest significant of such extensions.
While the userspace API extension is simple, a lot of work went under the hood and the in-kernel KMS helpers went through major changes that are not trivial to implement in drivers. This talk will present KMS atomic updates and explain how to update KMS drivers to take advantage of the new API, using the Renesas rcar-du-drm driver as an example.
Laurent Pinchart, Ideas on Board
Building a QT based solution on a i.MX7 processor running Linux and FreeRTOSFernando Luiz Cola
This document discusses developing embedded solutions using asymmetric multiprocessing (AMP) architectures. It provides an overview of AMP vs symmetric multiprocessing (SMP), examples of AMP applications, and the NXP I.MX7 dual-core processor architecture. It then demonstrates inter-processor communication between Linux on an ARM Cortex-A7 core and FreeRTOS on a Cortex-M4 core using RPMSG. Finally, it shows an example Qt application running on Linux that receives sensor data from FreeRTOS via RPMSG and displays it in real-time charts.
Anatomy of ROCgdb presentation at gcc cauldron 2022ssuser866937
This document discusses ROCgdb, a GDB port that allows debugging ROCm (Radeon Open Compute) applications running on AMD GPUs. ROCgdb adds support for GPU threads under the same target stack as host threads. It models the GPU's SIMT execution model by representing threads as lanes that execute in lockstep. ROCgdb extensions allow stepping through divergent code without stopping on inactive lanes, and identifying each lane's state.
Midiendo la calidad de código en WTF/Min (Revisado EUI Abril 2014)David Gómez García
The document discusses various examples of poor code quality, such as unnecessary comments, overly complex code, poor naming conventions, and unnecessary code. It provides examples of real code snippets that demonstrate these issues. It also discusses principles of good code quality like keeping code simple, avoiding duplication, and separation of concerns. Finally, it discusses tools and techniques for measuring and ensuring code quality like unit testing, code reviews, quality metrics, and issue tracking dashboards.
Embedded Recipes 2019 - Introduction to JTAG debuggingAnne Nicolas
This talk introduces JTAG debugging capabilities, both for debugging hardware and software. Marek first explains what the JTAG stands for and explains the operation of the JTAG state machine. This is followed by an introduction to free software JTAG tools, OpenOCD and urJTAG. Marek shortly explains how to debug software using those tools and how that ties into the JTAG state machine. However, JTAG was designed for testing hardware. Marek explains what boundary scan testing (BST) is, what are BSDL files and their format, and practically demonstrates how to blink an LED using BST and only free software tools.
Marek Vasut
Accelerated Windows Debugging 3 training public slidesDmitry Vostokov
The document outlines an agenda for a 2-day training on debugging techniques using WinDbg, including fundamentals of debugging like memory spaces, execution modes, and debugging techniques; exercises on user mode debugging; and sessions on kernel mode debugging, managed debugging, and debugging principles.
Accelerated .NET Memory Dump Analysis training public slidesDmitry Vostokov
This document provides an overview and training materials for analyzing .NET memory dumps. The training goals are to review fundamentals, learn how to analyze process dumps, learn necessary WinDbg commands in context, and cover CLR 4 on x86 and x64. The training covers fundamentals of memory spaces, user/managed space, types/assemblies/modules, process threads, and provides examples of stack traces and commands. It also outlines practice exercises analyzing different memory dumps to diagnose issues like exceptions, deadlocks, leaks and corruption.
This episode shows process, kernel, complete and fibre bundle memory dump analysis using WinDbg and examples from Windows 8.1. Shows new changes in Explorer process. Covers Zombie Process, Spiking Thread, and Coincidental Symbolic Information memory analysis patterns.
This episode demonstrates GDB debugging and core dump analysis on Android platform. Discusses Android Linux processes and threads. Shows Invalid Pointer and Spiking Thread memory analysis patterns in the context of ARM assembly language.
This episode discusses Spiking Thread, Deadlock, and Paratext memory analysis patterns in the context of Android Java platform. Shows an example of Android Debug Bridge (ADB) usage.
This episode proposes a classification of memory leaks and provides a parameter reconstruction example from a memory dump saved after an implicit heap leak.
This episode explains raw stack; discusses Execution Residue and Past Stack Trace memory analysis patterns; provides examples for manual stack trace reconstruction and associated patterns.
The most frequently asked question in software technical support is how to save a memory dump depending on abnormal software behaviour. This episode provides an algorithm and shows how to generate a user dump when a process suddenly disappears from Windows Task Manager.
This episode introduces malware analysis patterns and malware modelling in the context of DLL injection. Discusses victimware and Injection Residue pattern example.
This short episode introduces a revolution and paradigm shift in software log analysis: log as a software narrative, structured analysis according to patterns, product and platform independent common language, trace analysis pattern classification.
Covers what's new in Windows 8 complete memory dump analysis, WinDbg update and introduces new pattern Frozen Process and support for collective pointers.
Debugging TV Frames episode 0x15 discusses inter-correlation in software trace and log analysis using Windows messaging as an example. This episode also features Citrix MessageHistory as a recording tool and Excel as an analysis tool.
Debugging TV Frames episode 0x14 discusses multibraiding and adjoint threading in software log and trace analysis with practical examples from Process Monitor, Excel, and Citrix CDFAnalyzer.
Debugging TV Frames episode 0x13 discusses C++ return value optimization in the context of Mac OS X, Xcode and software trace analysis patterns. Features RVO internals and its x64 assembly language implementation.
Dmitry Vostokov is presenting on topics related to debugging Mac OS software including a pattern language for diagnostics, an example of core dump analysis using patterns, and partial stack trace reconstruction. The document provides an example of analyzing a core dump file from Mac OS using gdb and examining the memory regions around the stack pointer to find clues about the state of the program. It shows dumping memory near the stack, examining buffers, and finding a readable string that provides insight into what the program was doing.
This episode shows how to examine stack region on Windows and Mac OS X using WinDbg and GDB. It also briefly discusses associated structural memory patterns and introduces unified diagnostics/debugging pattern language for software post-construction.
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...XfilesPro
Wondering how X-Sign gained popularity in a quick time span? This eSign functionality of XfilesPro DocuPrime has many advancements to offer for Salesforce users. Explore them now!
What to do when you have a perfect model for your software but you are constrained by an imperfect business model?
This talk explores the challenges of bringing modelling rigour to the business and strategy levels, and talking to your non-technical counterparts in the process.
Transform Your Communication with Cloud-Based IVR SolutionsTheSMSPoint
Discover the power of Cloud-Based IVR Solutions to streamline communication processes. Embrace scalability and cost-efficiency while enhancing customer experiences with features like automated call routing and voice recognition. Accessible from anywhere, these solutions integrate seamlessly with existing systems, providing real-time analytics for continuous improvement. Revolutionize your communication strategy today with Cloud-Based IVR Solutions. Learn more at: https://thesmspoint.com/channel/cloud-telephony
Malibou Pitch Deck For Its €3M Seed Roundsjcobrien
French start-up Malibou raised a €3 million Seed Round to develop its payroll and human resources
management platform for VSEs and SMEs. The financing round was led by investors Breega, Y Combinator, and FCVC.
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemPeter Muessig
Learn about the latest innovations in and around OpenUI5/SAPUI5: UI5 Tooling, UI5 linter, UI5 Web Components, Web Components Integration, UI5 2.x, UI5 GenAI.
Recording:
https://www.youtube.com/live/MSdGLG2zLy8?si=INxBHTqkwHhxV5Ta&t=0
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
Microservice Teams - How the cloud changes the way we workSven Peters
A lot of technical challenges and complexity come with building a cloud-native and distributed architecture. The way we develop backend software has fundamentally changed in the last ten years. Managing a microservices architecture demands a lot of us to ensure observability and operational resiliency. But did you also change the way you run your development teams?
Sven will talk about Atlassian’s journey from a monolith to a multi-tenanted architecture and how it affected the way the engineering teams work. You will learn how we shifted to service ownership, moved to more autonomous teams (and its challenges), and established platform and enablement teams.
UI5con 2024 - Bring Your Own Design SystemPeter Muessig
How do you combine the OpenUI5/SAPUI5 programming model with a design system that makes its controls available as Web Components? Since OpenUI5/SAPUI5 1.120, the framework supports the integration of any Web Components. This makes it possible, for example, to natively embed own Web Components of your design system which are created with Stencil. The integration embeds the Web Components in a way that they can be used naturally in XMLViews, like with standard UI5 controls, and can be bound with data binding. Learn how you can also make use of the Web Components base class in OpenUI5/SAPUI5 to also integrate your Web Components and get inspired by the solution to generate a custom UI5 library providing the Web Components control wrappers for the native ones.
SOCRadar's Aviation Industry Q1 Incident Report is out now!
The aviation industry has always been a prime target for cybercriminals due to its critical infrastructure and high stakes. In the first quarter of 2024, the sector faced an alarming surge in cybersecurity threats, revealing its vulnerabilities and the relentless sophistication of cyber attackers.
SOCRadar’s Aviation Industry, Quarterly Incident Report, provides an in-depth analysis of these threats, detected and examined through our extensive monitoring of hacker forums, Telegram channels, and dark web platforms.
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfVALiNTRY360
Salesforce Healthcare CRM, implemented by VALiNTRY360, revolutionizes patient management by enhancing patient engagement, streamlining administrative processes, and improving care coordination. Its advanced analytics, robust security, and seamless integration with telehealth services ensure that healthcare providers can deliver personalized, efficient, and secure patient care. By automating routine tasks and providing actionable insights, Salesforce Healthcare CRM enables healthcare providers to focus on delivering high-quality care, leading to better patient outcomes and higher satisfaction. VALiNTRY360's expertise ensures a tailored solution that meets the unique needs of any healthcare practice, from small clinics to large hospital systems.
For more info visit us https://valintry360.com/solutions/health-life-sciences
When it is all about ERP solutions, companies typically meet their needs with common ERP solutions like SAP, Oracle, and Microsoft Dynamics. These big players have demonstrated that ERP systems can be either simple or highly comprehensive. This remains true today, but there are new factors to consider, including a promising new contender in the market that’s Odoo. This blog compares Odoo ERP with traditional ERP systems and explains why many companies now see Odoo ERP as the best choice.
What are ERP Systems?
An ERP, or Enterprise Resource Planning, system provides your company with valuable information to help you make better decisions and boost your ROI. You should choose an ERP system based on your company’s specific needs. For instance, if you run a manufacturing or retail business, you will need an ERP system that efficiently manages inventory. A consulting firm, on the other hand, would benefit from an ERP system that enhances daily operations. Similarly, eCommerce stores would select an ERP system tailored to their needs.
Because different businesses have different requirements, ERP system functionalities can vary. Among the various ERP systems available, Odoo ERP is considered one of the best in the ERp market with more than 12 million global users today.
Odoo is an open-source ERP system initially designed for small to medium-sized businesses but now suitable for a wide range of companies. Odoo offers a scalable and configurable point-of-sale management solution and allows you to create customised modules for specific industries. Odoo is gaining more popularity because it is built in a way that allows easy customisation, has a user-friendly interface, and is affordable. Here, you will cover the main differences and get to know why Odoo is gaining attention despite the many other ERP systems available in the market.
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
Most important New features of Oracle 23c for DBAs and Developers. You can get more idea from my youtube channel video from https://youtu.be/XvL5WtaC20A
Measures in SQL (SIGMOD 2024, Santiago, Chile)Julian Hyde
SQL has attained widespread adoption, but Business Intelligence tools still use their own higher level languages based upon a multidimensional paradigm. Composable calculations are what is missing from SQL, and we propose a new kind of column, called a measure, that attaches a calculation to a table. Like regular tables, tables with measures are composable and closed when used in queries.
SQL-with-measures has the power, conciseness and reusability of multidimensional languages but retains SQL semantics. Measure invocations can be expanded in place to simple, clear SQL.
To define the evaluation semantics for measures, we introduce context-sensitive expressions (a way to evaluate multidimensional expressions that is consistent with existing SQL semantics), a concept called evaluation context, and several operations for setting and modifying the evaluation context.
A talk at SIGMOD, June 9–15, 2024, Santiago, Chile
Authors: Julian Hyde (Google) and John Fremlin (Google)
https://doi.org/10.1145/3626246.3653374