#!/bin/bash cd /Users/accusys/markbase/docs/fuse_poc echo "=== MarkBase FUSE C POC Verification ===" # 1. Check compilation echo "1. Compilation check:" ls -lh markbase_v9_optimized file markbase_v9_optimized # 2. Check dependencies echo "" echo "2. Dependencies check:" otool -L markbase_v9_optimized | grep fuse otool -L markbase_v9_optimized | grep sqlite # 3. Check source code echo "" echo "3. Source code statistics:" wc -l markbase_v9_optimized.c grep -c "pthread_mutex" markbase_v9_optimized.c grep -c "cache_" markbase_v9_optimized.c # 4. Verify functionality echo "" echo "4. Functional verification:" export DYLD_LIBRARY_PATH=/usr/local/lib:$DYLD_LIBRARY_PATH pkill -9 -f markbase_v9 umount -f /tmp/verify_mount 2>/dev/null || true mkdir -p /tmp/verify_mount ./markbase_v9_optimized -f /tmp/verify_mount & MB_PID=$! sleep 3 # Test basic operations echo " - Mount: $(mount | grep verify_mount | wc -l)" echo " - Read small file: $(head -c 10 /tmp/verify_mount/Home/download-1.jpg | wc -c) bytes" echo " - Read large file: $(dd if=/tmp/verify_mount/Home/羅安禾素描自畫像.mp4 bs=1M count=10 2>&1 | grep 'records in')" echo " - Concurrent: $(time (for i in {1..5}; do head -c 1K /tmp/verify_mount/Home/download-1.jpg > /tmp/v$i & done; wait) 2>&1 | grep real)" kill $MB_PID 2>/dev/null sleep 1 umount /tmp/verify_mount 2>/dev/null || true rm -f /tmp/v* echo "" echo "=== Verification Complete ==="