How vaidhika1105/e-commerce_order_management_system works
This is a console-based e-commerce order-management program used as an operating-systems case study. The main workflow is menu-driven: initialize and browse products, place an order with a payment choice, update inventory, log transaction events, and persist or view order history. The menu also exposes standalone OS demonstrations, including process scheduling, IPC, threading, memory management, deadlock avoidance, and file allocation. Relationships below follow visible calls and file operations; several demo implementations were not sampled, so their internal links are omitted.
Main entry points: main.c Interactive menu · order.c Order handling · file_management.c File management · transaction.c Transaction recovery
Components 16
Commerce workflow
- Interactive menu
main.c - Product catalog
product.c - Order handling
order.c
File records
- Transaction recovery
transaction.c - Order history
data/orders.txt - Transaction log
data/transaction_log.txt - File management
file_management.c
OS demonstrations
- Process demo
process.c - CPU scheduling
scheduling.c - IPC demo
ipc.c - Threading and inventory sync
threading.c - Page replacement
page_replacement.c - Deadlock avoidance
banker.c - File allocation
file_allocation.c
Shared interface
- Domain data types
ecommerce.h
Other components
- Console user
Connections 18
- Console user → Interactive menu: chooses menu actions
main.c - Interactive menu → Product catalog: initializes and displays
main.c - Interactive menu → Order handling: places or views orders
main.c - Order handling → Product catalog: looks up product
order.c - Order handling → Transaction recovery: logs events
order.c - Order handling → Order history: writes and reads
order.c - Interactive menu → Transaction recovery: runs transaction and recovery demos
main.c - Transaction recovery → Transaction log: writes and scans
transaction.c - Interactive menu → File management: runs file demo
main.c - File management → Order history: reads orders
file_management.c - File management → Transaction log: reads transaction log
file_management.c - Interactive menu → Process demo: runs process demo
main.c - Interactive menu → CPU scheduling: opens scheduling menu
main.c - Interactive menu → IPC demo: runs IPC demo
main.c - Interactive menu → Threading and inventory sync: runs thread demos
main.c - Interactive menu → Page replacement: opens page menu
main.c - Interactive menu → Deadlock avoidance: runs Banker demo
main.c - Interactive menu → File allocation: runs allocation demo
main.c