linux architecture overview

8
Linux Architecture Overview 1

Upload: maude-parrish

Post on 18-Jan-2018

217 views

Category:

Documents


0 download

DESCRIPTION

Initialization Uboot – hardware init, loads kernel Kernel – remaining initialization, calls “init” Init – 1st process, executes startup script /etc/init.d/rcS Run_flphone.sh – startup script Nano-X – the X-Windows server Nanowm – sets bg image

TRANSCRIPT

Page 1: Linux Architecture Overview

Linux Architecture

Overview

1

Page 2: Linux Architecture Overview

Initialization• Uboot – hardware init, loads kernel• Kernel – remaining initialization, calls “init”• Init – 1st process, executes startup script

– /etc/init.d/rcS• Run_flphone.sh – startup script• Nano-X – the X-Windows server• Nanowm – sets bg image

2

Page 3: Linux Architecture Overview

System Structure • MicroKernel – minimal functionality

– Interprocess communication (IPC)– Memory management

• Autonomous processes & co-routines– VFS– Network stack– Process manager– Device drivers

• Non-kernel– windowing system– compiler– shells– Editors– utilities

3

Page 4: Linux Architecture Overview

System Structure-2

4

Sockets VFS Vmem ProcessControl

NFSTCP, IP, etc

Proc, sysfs

File sysmmap

MM

Process memory

IPC

Page 5: Linux Architecture Overview

System Structure

5

Kernel+

h/w related code

System Call Interface

User mode space

Device drivers

Kernel mode space

Page 6: Linux Architecture Overview

Structural Problems• Erroneous co-routines can block system• Formal interfaces slow down system

6

Page 7: Linux Architecture Overview

Directory structure

7

user

hom e

bin sbin lib

usr etc bin sbin

/

Page 8: Linux Architecture Overview

• /bin Essential user command binaries that need to be available also in single user mode.

• /sbin Essential system binaries (e.g. init, insmod, ifup)• /lib Libraries for the binaries in /bin and /sbin• /usr/bin Non-essential user command binaries that are not needed in

single user mode• /usr/sbin Non-essential system binaries (e.g. daemons for

network-services)• /usr/lib Libraries for the binaries in /usr/bin and /usr/sbin• /etc Host-specific system-wide configuration files• /dev Device files• /home User home directories (optional)• /proc Virtual file system documenting kernel and process status as text

files

8