Synology Technology Alex Wang May 1, 2008.

Slides:



Advertisements
Similar presentations
COMPUTERS: TOOLS FOR AN INFORMATION AGE Chapter 3 Operating Systems.
Advertisements

INSTALLING LINUX.  Identify the proper Hardware  Methods for installing Linux  Determine a purpose for the Linux Machine  Linux File Systems  Linux.
Linux on commodity network H/W Josh Parsons LUGOD talk August 15 th 2005.
Lab 4 Department of Computer Science and Information Engineering National Taiwan University Lab4 - Bootloader 2014/10/14/ 13 1.
Leveraging WinPE and Linux Preboot for Effective Provisioning Jonathan Richey | Director of Development | Altiris, Inc.
Novell Server Linux vs. windows server 2008 By: Gabe Miller.
Operating Systems Input/Output Devices (Ch , 12.7; , 13.7)
Handheld TFTP Server with USB Andrew Pangborn Michael Nusinov RIT Computer Engineering – CE Design 03/20/2008.
Lesson 15 – INSTALL AND SET UP NETWARE 5.1. Understanding NetWare 5.1 Preparing for installation Installing NetWare 5.1 Configuring NetWare 5.1 client.
1 Web Server Administration Chapter 3 Installing the Server.
© 2004, D. J. Foreman 1 Computer Organization. © 2004, D. J. Foreman 2 Basic Architecture Review  Von Neumann ■ Distinct single-ALU & single-Control.
OPERATING SYSTEMS Introduction
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Operating Systems Input/Output Devices (Ch 5: )
Chapter 2 INSTALLTION OF LINUX DISTRIBUTION. Minimum hardware requirement 1) DVD drive: You must have a DVD drive (either DVD-ROM or DVD burner), and.
F ILE S YSTEMS comparison of FAT, NTFS, and Linux.
File System. NET+OS 6 File System Architecture Design Goals File System Layer Design Storage Services Layer Design RAM Services Layer Design Flash Services.
Troubleshooting Guide for Network Hard Disk. Model - NH-200.
Embedded Systems Principle of Debugger. Reference Materials kl.de/avr_projects/arm_projects/#winarmhttp://
1 Input/Output. 2 Principles of I/O Hardware Some typical device, network, and data base rates.
By Matthew Smith, John Allred, Chris Fulton. Requirements Relocation Protection Sharing Logical Organization Physical Organization.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
1 Web Server Administration Chapter 3 Installing the Server.
Chapter-4 Windows 2000 Professional Win2K Professional provides a very usable interface and was designed for use in the desktop PC. Microsoft server system.
 FILE S SYSTEM  DIFFERENT FILE SYSTEMS  FILE SYSTEM COMPONENTS  FILE OPERATIONS  LOG STRUCTERD FILE SYSTEM  FILE EXAMPLES.
hardware and operating systems basics.
SIP / H.323 / IAX telephone customization 3 rd term presentation Brendan Marlborough Supervisor: Alfredo Terzoli.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
1 ITSK 2611 Welcome. 2 Operating System 3 What is an OS Resource Manager –Disk –Memory –CPU Device Manager –Printers –Video Card –Sound Card Utility.
Disk Access. DISK STRUCTURE Sector: Smallest unit of data transfer from/to disk; 512B 2/4/8 adjacent sectors transferred together: Blocks Read/write heads.
Guide to Linux Installation and Administration, 2e 1 Chapter 9 Preparing for Emergencies.
1 File Systems Chapter Files 6.2 Directories 6.3 File system implementation 6.4 Example file systems.
INFO1 – Practical problem solving in the digital world
02/2008 MATRIX VISION GmbH 1 Presentation The intelligent camera and Image processing sensor.
From UEFI Shell to Linux - UEFI Linux BootLoader Zhang Rui Software Engineer Sep 28 th 2011.
Beagle Board Fast Boot Hui Chen Keji Ren Dec 10 th, 2009 EE382N-4 Project.
Linux development on embedded PowerPC 405 Jarosław Szewiński.
Installation Overview Lab#2 1Hanin Abdulrahman. Installing Ubuntu Linux is the process of copying operating system files from a CD, DVD, or USB flash.
Hardware Trends. Contents Memory Hard Disks Processors Network Accessories Future.
1 Selecting LAN server (Week 3, Monday 9/8/2003) © Abdou Illia, Fall 2003.
I/O Management and Disk Structure Introduction to Operating Systems: Module 14.
RDC R32xx/HB30x Web UI & System Configuration Design March. 23, 2006 draft version 0.99 RDC Semiconductor Co., Ltd. All Rights Reserved.
Wright Technology Corp. Minh Duong Tina Mendoza Tina Mendoza Mark Rivera.
Device and Filesystem Management CSCI N321 – System and Network Administration Copyright © 2000, 2010 by Scott Orr and the Trustees of Indiana University.
Linux Architecture Overview 1. Initialization Uboot – hardware init, loads kernel Kernel – remaining initialization, calls “init” Init – 1 st process,
1.4 Hardware Review. CPU  Fetch-decode-execute cycle 1. Fetch 2. Bump PC 3. Decode 4. Determine operand addr (if necessary) 5. Fetch operand from memory.
Sep. 17, 2002BESIII Review Meeting BESIII DAQ System BESIII Review Meeting IHEP · Beijing · China Sep , 2002.
Michael Still Google Inc. October, Linux on the Linksys NSLU2 Solving all your problems with little NAS boxes Michael Still Google, Inc. October,
Linux File system Implementations
CERN - European Organization for Nuclear Research FOCUS March 2 nd, 2000 Frédéric Hemmer - IT Division.
 Contents 1.Introduction about operating system. 2. Minimum requirement for Windows 7 operating system. 3. Procedure to install Window 7 operating system.
Implementation of Embedded OS
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
졸업 프로젝트 발표 1/74 Trinity Snapshot Boot 날 짜: 팀 명: Trinity
Chap. 4 ARM Boot Loader Internals. 2 S3C2500 ARM940T Core module ARM9TDMI CoreIC.
WP1- Documentation Booting Petalinux from TFTP and using Network file system Section for developers Zynq 7020 R. Assiro.
Linux on ARM7TDMI or Nothing is as easy as it looks Helicon technologies Ltd. How to run uClinux on NXP LPC22xx.
Operating System & Application Software
UBUNTU INSTALLATION
Chapter 11: Implementing File Systems
Chapter 12: File System Implementation
Improvement of startup time using Software Suspend - Project Update -
How can a detector saturate a 10Gb link through a remote file system
Structure of Unix OS.
Operating System Module 1: Linux Installation
Booting Up 15-Nov-18 boot.ppt.
Overview Continuation from Monday (File system implementation)
Linux Architecture Overview.
WINDOW 7 INSTALLATION Prepared By:- Mr. Pawan Kumar
Presentation transcript:

Synology Technology Alex Wang May 1, 2008

Outline Hardware architecture Software architecture Performance Competitive cost Quality

Hardware Architecture

Hardware Specification DS107 DS207+ DS407 DS508 CPU Power PC 266MHz ARM 500MHz PowerPC 800MHz RAM 64 MB 128MB 512MB Flash 2 MB 4 MB Disk 1 2 4 5 USB 3 AC Adapter 50W 70W 100W 250W

DS407 Board

Software Architecture

Software Architecture 1 source tree for multiple platform 5 CPU, 19 models Only change boot loader, kernel, and toolchain Sometimes build our own toolchain crosstool: http://www.kegel.com/crosstool/ Chroot build process

Flash Layout 2 MB 4 MB Kernel Kernel 0xD0000, 832 KB 0x200000, 2MB Hw config (0x10000) Reserved 0x20000 Ramdisk 0x180000, 1.5MB ppcboot (0x40000) Ramdisk 0xD0000, 704KB Hw config (0x10000) Reserved 0x20000 FIS directory (0x10000) FIS directory (0x10000) uboot (0x40000)

Boot Procedure 6 3 7 2 5 1 8 8 4 Flash RAM Ramdisk init Ramdisk initrd Kernel mounts memory disk Flash RAM 6 Ramdisk init Ramdisk 3 initrd 0x800000 0xFFE00000 7 Kernel Kernel 2 5 Ramdisk linuxrc.syno 0xFFC00000 0x80000 Copy kernel to RAM 1 8 8 4 Jump to kernel Disk /etc/rc Boot loader Ramdisk /etc/rc

Boot Procedure

Software Architecture Web Applications Management UI Network Service Synology SDK Library Linux Kernel, 2.6.15, 2.4.22 Disk Driver Network Driver USB Driver Synology HW driver

Performance

RAID 5 Read Performance Intel Celeron 3.2GHz Celeron M 1.5 GHz ARM 500 MHz ARM 500 MHz ARM 500 MHz

RAID 5 Read Performance Intel Celeron 3.2GHz Celeron M 1.5 GHz ARM 500 MHz PowerPC 266 MHz ARM 500 MHz

RAID 5 Write Performance

RAID 5 Read Performance 40% faster then original Linux kernel FTP download from 26 MB/s to 37 MB/s 1 year ahead to Linux kernel How?

RAID 5 Read Performance At least 3 disks Allow 1 disk failure P 1 2 3 6 4 5 P 9 7 P 8 12 P 10 11

Stripe Cache (Used to check data consistency) RAID 5 Read Performance Read buffer Memory copy Stripe Cache (Used to check data consistency) Memory copy P 1 2 3 6 4 5 P 9 7 P 8 12 P 10 11

Reduce Memory Copy Download file for (;;) { cnt = read(file_fd, buf, sizeof(buf)); if (cnt <= 0) break; for (len = cnt, bp = buf; len > 0;) { cnt = write(sock_fd, bp, len); if (cnt < 0) error; len -= cnt; bp+=cnt; }

Reduce Memory Copy User space daemon Disk read() Kernel memory copy write() Network memory copy

Reduce Memory Copy cnt = sendfile(sock_fd, file_fd, offset, filesize); User space daemon Kernel Disk sendfile() Network

Large Directory Handling Windows uses case-insensitive Unix/Linux is case-sensitive How would Samba do to pretend it is case-insensitive? Create/rename/delete/lookup

Large Directory Handling Enumerate all files in the directory, convert file name to upper and do string compare! What if there are more than 10,000 files in a directory?

Large Directory Handling Modify EXT3 file system to be case-insensitive Port EXT3 directory hash to 2.4 kernel open() 10,000 files from 2mins to 10 sec

Competitive Cost

Competitive Cost We are small company NAS is a small market Big companies get lower price because they can share parts between different products How to compete? Software!!

Competitive Cost – Flash size We use 2 MB or 4 MB flash Our competitor uses 16 MB flash (or 512 KB flash and bundle disk) Don't bundle disk to avoid the risk of disk price decline 2 MB $3 4 MB $4 16 MB $10

Competitive Cost – Flash size Use 2.4 kernel smaller footprint, better performance, FTP 20% faster Network installation The ramdisk in flash provides minimize function for installation only

Competitive Cost – Power Supply A 1TB Disk needs 40W PC server uses 350W power supply, noisy, large We use 100W adapter for 4 disk model, quiet, small 100 W for 4 disk+PCB? 40W Adapter $4 50W adapter (1 disk) $5.5 70W adapter (2 disks) $9 100W adapter (4 disks) $22 250W (PC) $28

Competitive Cost – Power Supply Disk spin up 35 W Disk access 14 W Disk idle 12 W Disk hibernation 0 W PCB 7~12 W Power up sequence

Competitive Cost – Power Supply

Competitive Cost – Power Supply Power up sequence Software delay until disk ready, 40 seconds How about hibernation?

Competitive Cost – Power Supply Ask disk whether disk is hibernating before access it When disk is hibernating and wake up the first disk If other disks are waking up, put into queue to delay wake up Extra command to ask status? Performance?

Quality

Quality - Reliability Mass stress 12pic x 14days for every release MP - Stress memory for 24 hours MP - Stress with disk for 24 hours Production cost: 4 disks x 100 pics Production capacity: 100 per day

Quality – Software Dainty Continuous free firmware upgrade Take care on small details File created time Unicode conversion Extended attribute RAID error handling

Quality – RAID Error Handling Read error? P 1 2 B 6 4 5 P 9 7 P 8 12 P 10 11

Quality – RAID Error Handling Rewrite to leverage disk bad sector mapping P 1 2 B 6 4 5 P 9 7 P 8 12 P 10 11 3

Q&A Yes, we are hiring