Fail-Safe Design with the TREEspan File System Part 3: Enforcing Coherence Through Transactions

In the previous article of this threefold series on fail-safe design, we have seen how TSFS transactions can be used to build fail-safe applications by protecting individual files against data and metadata corruption. In this third article, we now show that TSFS transactions go beyond preserving file-level integrity, and can also be used to enforce … Read more

Fail-Safe Design with the TREEspan File System Part 2: TSFS Transactions

In the first article of this three-part series on fail-safe design, we have spent some time discussing how unexpected failures can threaten the integrity of an application by corrupting both the application data and file system metadata. This time, we see how an application can be designed to withstand such unforeseen events, using TSFS transactions. … Read more

Fail-Safe Design with the TREEspan File System Part 1: Introduction

This is the first article of a three-part series on fail-safe, storage-related application design. The first part of the series lays out the fundamental problem of unexpected failures and briefly discusses partial solutions. The second part introduces the TREEspan File System(TSFS) transactions as a means to protect the application against such potentially disruptive events. Finally, … Read more

MicroBlaze Benchmarks Part 2 – Memory Bandwidth & Latency

In the previous article from this series, we looked at the core performance of the Xilinx MicroBlaze™ in various configurations using the popular CoreMark benchmark. While CoreMark is good at measuring core CPU performance it is mostly transparent to memory performance since, it’s designed to run entirely out of the L1 cache. In this article, … Read more