Upload
hirosh-trazor
View
78
Download
0
Embed Size (px)
DESCRIPTION
Team : Hirosh Tharaka, Shohan Dassanayake, Promod Madushan,
Citation preview
Operating Systems Project on
Fedora 12
By
Hirosh Tharaka (CB004149)
Promod Madhushan (CB004138)
Shohan Dassanayake (CB004060)
INTAKE CODE : DF10A1ICT
MODEL TITLE & CODE : Operating Systems (AICT004-3-2)
Making Criteria
No
Group Number #
Team Member Names
Res
earc
h &
Inves
tigat
ion (
30)
Inst
alla
tion(2
0)
Docu
men
tati
on
(10)
Ref
eren
ces
(10
)
Gro
up
Mark
(70)
Anal
ysi
s (1
5)
Pre
senta
tion (
15)
Ind
. M
ark
s (3
0)
Tota
l (1
00)
01 D.M.D HiroshTharaka
02 Shohan Clement
Dassanayake
03 Promod Madhushan
Workload Matrix
Hirosh Shohan Promod
1.0 Project Plan
- Choosing an OS
- Gantt Chart
- Work Load Matrix
- Work Breakdown Structure
2.0 Research and Investigation
- Introduction to Fedora 12
- History
- System Requirement
Software
Hardware
3.0 Installation
- Preparing for installation
- Installing Fedora 12
- Capturing Screen Previews and finding
information about the process
- Preparing Documentation
4.0 Analysis
- User Interface
- Process Control Management
- Deadlock Management
- Memory Management
- Virtual Memory Management
- Secondary Disk Scheduling Management
- System Administration and Support
- Recovery Strategies
- Security Strategies
- Standard Support
5.0 Finalizing the Project
- Prepare Documentations
- Verifying Documentations
- Finalizing the Documentation
6.0 Presentation
- Preparing Slides for Presentation
- Rehearsing for the Presentation
Gantt- Chart
Fedora 12 DF10A1ICT
i | P a g e
Acknowledgement
The support given by Mr Kolitha Gunaratne is well appreciated by all three of us as
team and also we would like to show our gratitude to all those who helped us in
different ways to successfully complete this project.
We would also like to thank the APIIT for providing us recourses such as library
facilities and computer laboratory.
Fedora 12 DF10A1ICT
ii | P a g e
Table of Contents
Acknowledgement......................................................................................................... i
List of Tables................................................................................................................ v
List of Figures .............................................................................................................. v
1. Research& Investigation ....................................................................................... 1
1.1 Introduction ................................................................................................... 1
1.2 History of Linux ............................................................................................ 1
1.3 System Requirements .................................................................................... 2
1.3.1 Software Requirements .......................................................................... 2
1.3.2 Hardware Requirements ......................................................................... 4
2. Installation ............................................................................................................ 6
3. Analysis .............................................................................................................. 19
3.1 User Interface .............................................................................................. 19
3.1.1 CLI ....................................................................................................... 19
3.1.2 MDI ...................................................................................................... 30
3.1.3 GUI ....................................................................................................... 31
3.2 Process Control Management ...................................................................... 33
3.2.1 Process Control .................................................................................... 33
3.2.2 Process State ........................................................................................ 33
3.2.3 Thread .................................................................................................. 35
3.2.4 Multithreading ...................................................................................... 35
3.2.5 Process scheduling ............................................................................... 36
3.2.6 Main aims of process scheduling ......................................................... 36
3.2.7 Process scheduling algorithms ............................................................. 36
3.3 Deadlock Management ................................................................................ 37
3.3.1 Deadlock Definition ............................................................................. 37
3.3.2 Conditions for deadlocks...................................................................... 38
Fedora 12 DF10A1ICT
iii | P a g e
3.3.3 Strategies for dealing with deadlocks .................................................. 38
3.3.4 Deadlock Prevention ............................................................................ 38
3.3.5 Deadlock Avoidance ............................................................................ 39
3.4 Memory Management ................................................................................. 39
3.4.1 Reverse Mapping In Fedora 12 ............................................................ 39
3.4.2 Using Huge Pages In Linux Kernel 2.6 ............................................... 40
3.4.3 Storing page-table entries in high memory .......................................... 40
3.5 Virtual Memory Management ..................................................................... 42
3.5.1 Abstract model of Virtual to Physical address mapping ...................... 42
3.5.2 Page Frame Reclamation...................................................................... 42
3.5.3 Swap memory management ................................................................. 42
3.5.4 Shared Memory Virtual File System.................................................... 42
3.5.5 Demand Paging .................................................................................... 43
3.6 Secondary Disk Scheduling Management ................................................... 43
3.7 System Administration and Support ............................................................ 43
3.7.1 Installation ............................................................................................ 43
3.7.2 HOWTOs ............................................................................................. 44
3.7.3 System Administration Tools ............................................................... 45
3.8 Recovery Strategies ..................................................................................... 45
3.9 Security Strategies ....................................................................................... 46
3.9.1 Security tools in Fedora 12 .................................................................. 46
3.9.2 Workstation Security ............................................................................ 47
3.10 Standard Support ......................................................................................... 47
3.10.1 Fedora 12 Forum .................................................................................. 47
3.10.2 Burning ISO image to a disc ................................................................ 47
3.10.3 Installation Guide ................................................................................. 47
3.10.4 Quick Start Guide ................................................................................. 48
Fedora 12 DF10A1ICT
iv | P a g e
3.10.5 User Guide ........................................................................................... 48
3.10.6 Wireless Guide ..................................................................................... 48
3.10.7 Other Fedora 12 Documentations ........................................................ 48
4. Appendix ............................................................................................................. 48
Appendix A: Virtual Memory Management (3.5) .................................................. 48
Page Table Management ..................................................................................... 48
Process Address Space........................................................................................ 49
Boot Memory Allocator ...................................................................................... 49
Physical Page Allocation .................................................................................... 49
Non Contiguous Memory Allocation ................................................................. 50
Slab Allocater ..................................................................................................... 50
Appendix B: System Administration Tools (3.7.3) ................................................ 51
Linuxconf ............................................................................................................ 51
COAS .................................................................................................................. 51
Webmin ............................................................................................................... 51
YaST ................................................................................................................... 51
Appendix C: Secondary Disk Scheduling Management (3.6) ............................... 52
First Come First Serve ........................................................................................ 52
Elevator ............................................................................................................... 52
Cyclic Elevator ................................................................................................... 52
Deadline Scheduling ........................................................................................... 52
Anticipatory Scheduling ..................................................................................... 52
Appendix D: Process Control Management (3.2) .................................................. 52
Improved treading model for 2.6 Linux kernel ................................................... 52
Pthread ................................................................................................................ 53
Appendix E : Using huge Pages in Linux Kernel 2.6 (3.4.2) ................................. 53
Appendix F : Kernels ............................................................................................. 54
Fedora 12 DF10A1ICT
v | P a g e
Appendix G : X Windows ...................................................................................... 54
5. Conclusion .......................................................................................................... 55
6. References/Bibliography .................................................................................... 56
7. Work Breakdown Structure ................................................................................ 64
8. Weekly Meeting Reports .................................................................................... 65
Meeting Number: 1 ................................................................................................ 65
Meeting Number: 2 ................................................................................................ 66
Meeting Number: 3 ................................................................................................ 67
Meeting Number: 4 ................................................................................................ 68
Meeting Number: 5 ................................................................................................ 69
Meeting Number: 6 ................................................................................................ 70
Meeting Number: 7 ................................................................................................ 71
Meeting Number: 8 ................................................................................................ 72
List of Tables
Table 1: Command Lines ........................................................................................... 30
Table 2 : Tread States in Linux .................................................................................. 35
Table 3 : how the process scheduling is done in fedora 12Error! Bookmark not
defined.
Table 4 : Solutions for deadlock problem .................................................................. 38
Table 5 : Components in HOWTOs ........................................................................... 44
Table 6 : C.I.A Defenition Table ............................................................................... 46
List of Figures
Figure 1: Creator of Linux ........................................................................................... 1
Figure 2: Accessing the terminal.................................................................................. 3
Fedora 12 DF10A1ICT
vi | P a g e
Figure 3: Terminal Preview ......................................................................................... 3
Figure 4: Shell .............................................................................................................. 4
Figure 5: Fedora 12 Live CD Boot Screen .................................................................. 6
Figure 6: Media Test .................................................................................................... 7
Figure 7: Media Detection Notification ....................................................................... 8
Figure 8: Welcome Screen of Installation Process ...................................................... 8
Figure 9: Language Configuration ............................................................................... 9
Figure 10: Key Board Configuration ........................................................................... 9
Figure 11: Network Configuration ............................................................................. 10
Figure 12: Time Zone Configuration ......................................................................... 10
Figure 13: Administrative Account Configuration .................................................... 11
Figure 14: Weak Password......................................................................................... 11
Figure 15: Choosing the Hard Disk Partition ............................................................. 12
Figure 16: Additional Set of Software Updates ......................................................... 13
Figure 17: Starting Installation Process ..................................................................... 13
Figure 18: Installation Completing ............................................................................ 14
Figure 19: Loading Fedora 12 .................................................................................... 14
Figure 20: Fedora 12 Welcome Screen ...................................................................... 15
Figure 21: License Information .................................................................................. 15
Figure 22: User Account Configuration ..................................................................... 16
Figure 23: Date and Time Configuration ................................................................... 17
Figure 24: Hardware Profile....................................................................................... 17
Figure 25: Login Screen ............................................................................................. 18
Figure 26: Fedora 12 Desktop .................................................................................... 19
Figure 27: Application Bar, Place Bar and System Bar. ............................................ 31
Figure 28 : GNOME logo .......................................................................................... 32
Figure 29 - Fedora 12 GNOME desktop .................................................................... 32
Figure 30 : Abstract model of Virtual to Physical address mapping ......................... 42
Fedora 12 DF10A1ICT
1 | P a g e
1. Research& Investigation
1.1 Introduction
Fedora is an operating system which is based on Linux Environment and it is built on
year 2003 by a community distribution project called The Fedora Project. It is
developed by a gigantic IT skilled and non-skilled people around the world. It is a
free of cost operating system which everyone one can download from internet and
use in addition for the current operating system or instead of the non-free operating
systems such as Microsoft Windows TM
or Mac OSTM
. Fedora is sponsored by Red
Hat. (fedoraproject.org, 2010)
1.2 History of Linux
Figure 1: Creator of Linux
Linux is created by a young student who studying at university of Helsinki in
Finland. He is Linus Torvalds. Linus had an interest in minix. He created version
First version of Linux and put it on to internet. It‟s a largest software development in
all time. Linux offered many utilities to People Who like to develop software‟s.
When Red hat released its commercial version of Linux packaged with tech support
and documentation, People were more willing to try Linux on their personal pc‟s and
business pc‟s using it for run network as well. Linux has become the latest hit in the
software market.
Linux is great operation system in the open source software movement. Linux is
legally covered by the GNU General public license (GPL). GPL Allows to people get
Fedora 12 DF10A1ICT
2 | P a g e
free software‟s from internet and build own version from it. (livinginternet.com,
2010)
1.3 System Requirements
1.3.1 Software Requirements
1.3.1.1 Kernels
Fedora 12 is finalized with the Linux kernel 2.6.31 (Nestor, 2009). This version can
also update in to kernel 2.6.32.16. (spinics.net, 2010). Even though these two
functions are slightly difference they both have some basic functions in common.
They are:
(1) Process Allocation
(2) Memory Allocation
(3) Input and Output Device
This new kernel 2.6.32.16 fixes the over scheduling bug which is causing for the
performance of the computer. It also supports for the sky2 network adapters with
Optima chips. (spinics.net, 2010)
More information about Kernels can be found in Appendix F
1.3.1.2 Shells
Following are the shells that has used by the kernel 2.6.31 in fedora 12.
(1) Bourne Again Shell (Bash)
(2) KornShell (KSH)
(3) C Shell (CSH)
If the GNOME is not running, or if the GUI is disabled, user can use the shell when
machine starts. If not, user can follow the following steps to run the shell.
Fedora 12 DF10A1ICT
3 | P a g e
Application > System Tools > Terminal
Figure 2: Accessing the terminal
Figure 3: Terminal Preview
Fedora 12 DF10A1ICT
4 | P a g e
Figure 4: Shell
Type “echo $SHELL” on the terminal and press ENTER
1.3.1.3 X Windows
Even though the heart of fedora is kernel, for most of the users who use the GUI, the
face of the operating system is the graphical environment provided by the X
windows System, and it is also known as X. The graphical environment for the
Fedora 12 is supplied by the “X.Org Foundation”. It is the open source organization
created to manage development and strategy for the X Windows System. Fedora 12
includes the X11R7.1 release of the X Windows Systems which include several
video drivers, EXA, and platform support enhancements over the previous release.
(Silas et al., 2009)
More information about X Windows can be found in Appendix G
1.3.2 Hardware Requirements
Fedora 12 contains a graphical and text based installation in both X86 and X86 64bit
Architectures.
Fedora 12 DF10A1ICT
5 | P a g e
1.3.2.1 X86 Architecture
1.3.2.1.1 Graphical Installation
These are the minimum hardware requirements for Fedora 12 graphical installation:
At least 10GB storage space from hard disk
A memory greater than 192MB (RAM)
Recommended memory is 256MB (RAM)
Recommended 400MHz or higher processor (Intel® \ AMD)
These specifications are the minimum requirements to use the fedora 12 in the
graphical mode. Most of the computers manufactured during past 10 years full fills
these specifications which need to run to run Fedora 12. (Team, 2009)
1.3.2.1.2 Text Based Installation
By any case if it detects as you memory is 192MB or lower than 192MB, then it will
automatically switch in to text based installation.
These are the minimum hardware requirements for Fedora 12 text base installation:
At least 10GB storage space from hard disk
Recommended 200MHz or higher processor
A minimum memory of 128MB (RAM) (Team, 2009)
1.3.2.2 X86_64 Architecture
1.3.2.2.1 Graphical Installation
These are the minimum hardware requirements for Fedora 12 graphical installation:
At least 10GB storage space from hard disk
A memory greater than 384MB (RAM)
Recommended memory is 512MB (RAM) (Team, 2009)
1.3.2.2.2 Text Based Installation
These are the minimum hardware requirements for Fedora 12 text based installation:
Fedora 12 DF10A1ICT
6 | P a g e
At least 10GB storage space from hard disk
A memory greater than 256MB (RAM) (Team, 2009)
2. Installation
These are the steps we followed when we installed Fedora 12 Operating system.
Step 01: We are to choose the Function which we need to continue further in the
Fedora 12 Welcome Screen. (Fedora 12 Live CD Boot Screen)
Figure 5: Fedora 12 Live CD Boot Screen
Fedora 12 DF10A1ICT
7 | P a g e
Step 02: Asks to check the media before it starts the installation process or skip.
Figure 6: Media Test
Users have to choose whether to check the media or not. If the user hasn‟t check the
media earlier user can check it from here, or otherwise user can skip that step. If user
prompts to check the media, it will check and will eject the DVD, if only the testing
is successful. And it will ask for more disks. Because of there aren‟t any disks since
it‟s a DVD then user must to load the DVD again and continue the process.
Fedora 12 DF10A1ICT
8 | P a g e
Step 03: Displays the detection of media message.
Figure 7: Media Detection Notification
Step 04: Displays the welcome screen for Fedora 12 installation process.
Figure 8: Welcome Screen of Installation Process
Fedora 12 DF10A1ICT
9 | P a g e
Step 05: Asks for language which the user needs to precede the installation process.
Figure 9: Language Configuration
Step 06: Asks for the standard keyboard format. (Keyboard Configuration)
Figure 10: Key Board Configuration
Fedora 12 DF10A1ICT
10 | P a g e
Step 07: Requires entering the host name. (Network Configuration)
Figure 11: Network Configuration
Step 08: Asks for the nearest city in your time zone. (Time Zone Configuration)
Figure 12: Time Zone Configuration
Fedora 12 DF10A1ICT
11 | P a g e
Step 09: Asks for the password for the Root (Administrative) User.
Figure 13: Administrative Account Configuration
User has to create the password for the administrative account, or in other words the
root account. The password should contain with at least 6 characters.
Figure 14: Weak Password
Fedora 12 DF10A1ICT
12 | P a g e
If the password which user entered is weak, it will prompt an Alert box with a
message to inform the user that he have entered a weak password.
Step 10: Asks to select the hard disk partition.
Figure 15: Choosing the Hard Disk Partition
Fedora 12 DF10A1ICT
13 | P a g e
Step 11: Asks to select some additional tasks to install to the system along with the
fedora 12.
Figure 16: Additional Set of Software Updates
Step 12: Starts the Installation process.
Figure 17: Starting Installation Process
Fedora 12 DF10A1ICT
14 | P a g e
Step 13: Displays the installation completion screen.
Figure 18: Installation Completing
Step 14: Loads the fedora 12.
Figure 19: Loading Fedora 12
Fedora 12 DF10A1ICT
15 | P a g e
Step 15: Welcome screen to fedora 12.
Figure 20: Fedora 12 Welcome Screen
Step 16: Displays license information.
Figure 21: License Information
Fedora 12 DF10A1ICT
16 | P a g e
Step 17: Asks to create a user account with a password.
Figure 22: User Account Configuration
Fedora 12 DF10A1ICT
17 | P a g e
Step 18: Asks to set the date and time.
Figure 23: Date and Time Configuration
Step 19: Displays the Hardware profile
Figure 24: Hardware Profile
Fedora 12 DF10A1ICT
18 | P a g e
Step 20: Displays the login screen to fedora 12.
Figure 25: Login Screen
Fedora 12 DF10A1ICT
19 | P a g e
Step 21: Loads the desktop.
Figure 26: Fedora 12 Desktop
3. Analysis
3.1 User Interface
User interface have implemented to hide the complex part of the hardware to the user
3.1.1 CLI
Command line interface is built to interact with the operating system using a consoler
(or called as Terminal in Fedora 12). Following are few of commands that are used
in Fedora 12. <Command Lines >
Command Description
• apropos whatis Show commands pertinent to string. See
Fedora 12 DF10A1ICT
20 | P a g e
also threadsafe
• man -t ascii | ps2pdf - > ascii.pdf make a pdf of a manual page
which command Show full path name of command
time command See how long a command takes
• time cat Start stopwatch. Ctrl-d to stop. See also sw
dir navigation
• cd - Go to previous directory
• Cd Go to $HOME directory
(cd dir && command) Go to dir, execute command and return to
current dir
• pushd . Put current dir on stack so you
can popd back to it
file searching
• alias l='ls -l --color=auto' quick dir listing
• ls –lrt List files by date. See
also newest and find_mm_yyyy
• ls /usr/bin | pr -T9 -W$COLUMNS Print in 9 columns to width of terminal
find -name '*.[ch]' | xargs grep -E 'expr' Search 'expr' in this dir and below. See
also findrepo
find -type f -print0 | xargs -r0 grep -F
'example'
Search all regular files for 'example' in this
dir and below
find -maxdepth 1 -type f | xargs grep -F
'example'
Search all regular files for 'example' in this
dir
find -maxdepth 1 -type d |
while read dir; do echo $dir; echo
cmd2; done
Process each item with multiple commands
(in while loop)
• find -type f ! -perm -444 Find files not readable by all (useful for
web site)
• find -type d ! -perm -111 Find dirs not accessible by all (useful for
web site)
Fedora 12 DF10A1ICT
21 | P a g e
• locate -r 'file[^/]*\.txt' Search cached index for names. This re is
like glob *file*.txt
• look reference Quickly search (sorted) dictionary for
prefix
• grep --color reference
/usr/share/dict/words
Highlight occurances of regular expression
in dictionary
archives and compression
gpg -c file Encrypt file
gpg file.gpg Decrypt file
tar -c dir/ | bzip2 > dir.tar.bz2 Make compressed archive of dir/
bzip2 -dc dir.tar.bz2 | tar –x Extract archive (use gzip instead of bzip2
for tar.gz files)
tar -c dir/ | gzip | gpg -c | ssh
user@remote 'dd of=dir.tar.gz.gpg'
Make encrypted archive of dir/ on remote
machine
find dir/ -name '*.txt' | tar -c --files-
from=- | bzip2 > dir_txt.tar.bz2 Make archive of subset of dir/ and below
find dir/ -name '*.txt' | xargs cp -a --
target-directory=dir_txt/ --parents Make copy of subset of dir/ and below
( tar -c /dir/to/copy ) | ( cd /where/to/
&& tar -x -p )
Copy (with permissions) copy/ dir to
/where/to/ dir
( cd /dir/to/copy && tar -c . ) | ( cd
/where/to/ && tar -x -p )
Copy (with permissions) contents of copy/
dir to /where/to/
( tar -c /dir/to/copy ) | ssh -C
user@remote 'cd /where/to/ && tar -x -
p'
Copy (with permissions) copy/ dir to
remote:/where/to/ dir
dd bs=1M if=/dev/sda | gzip | ssh
user@remote 'dd of=sda.gz' Backup harddisk to remote machine
rsync (Network efficient file copier: Use the --dry-run option for testing)
rsync -P
rsync://rsync.server.com/path/to/file
Only get diffs. Do multiple times for
troublesome downloads
Fedora 12 DF10A1ICT
22 | P a g e
file
rsync --bwlimit=1000 fromfile tofile Locally copy with rate limit. It's like nice
for I/O
rsync -az -e ssh --delete ~/public_html/
remote.com:'~/public_html'
Mirror web site (using compression and
encryption)
rsync -auz -e ssh remote:/dir/ . &&
rsync -auz -e ssh . remote:/dir/
Synchronize current directory with remote
one
ssh (Secure SHell)
ssh $USER@$HOST command Run command on $HOST as $USER
(default command=shell)
• ssh -f -Y $USER@$HOSTNAME
xeyes
Run GUI command on $HOSTNAME as
$USER
scp -p -r $USER@$HOST: file dir/ Copy with permissions to $USER's home
directory on $HOST
ssh -g -L 8080:localhost:80
root@$HOST
Forward connections to
$HOSTNAME:8080 out to $HOST:80
ssh -R 1434:imap:143 root@$HOST Forward connections from $HOST:1434 in
to imap:143
ssh-copy-id $USER@$HOST Install $USER's public key on $HOST for
password-less log in
wget (multi purpose download tool)
•
(cd dir/ && wget -nd -pHEKk
http://www.pixelbeat.org/cmdline.html
)
Store local browsable version of a page to
the current dir
wget -c
http://www.example.com/large.file
Continue downloading a partially
downloaded file
wget -r -nd -np -l1 -A '*.jpg'
http://www.example.com/dir/
Download a set of files to the current
directory
wget ftp://remote/file[1-9].iso/ FTP supports globbing directly
• wget -q -O- Process output directly
Fedora 12 DF10A1ICT
23 | P a g e
http://www.pixelbeat.org/timeline.html
| grep 'a href' | head
echo 'wget url' | at 01:00 Download url at 1AM to current dir
wget --limit-rate=20k url Do a low priority download (limit to
20KB/s in this case)
wget -nv --spider --force-html -i
bookmarks.html Check links in a file
wget --mirror
http://www.example.com/
Efficiently update a local copy of a site
(handy from cron)
networking (Note ifconfig, route, mii-tool, nslookup commands are obsolete)
ethtool eth0 Show status of ethernet interface eth0
ethtool --change eth0 autoneg off speed
100 duplex full Manually set ethernet interface speed
iwconfig eth1 Show status of wireless interface eth1
iwconfig eth1 rate 1Mb/s fixed Manually set wireless interface speed
• iwlist scan List wireless networks in range
• ip link show List network interfaces
ip link set dev eth0 name wan Rename interface eth0 to wan
ip link set dev eth0 up Bring interface eth0 up (or down)
• ip addr show List addresses for interfaces
ip addr add 1.2.3.4/24 brd + dev eth0 Add (or del) ip and mask (255.255.255.0)
• ip route show List routing table
ip route add default via 1.2.3.254 Set default gateway to 1.2.3.254
• host pixelbeat.org Lookup DNS ip address for name or vice
versa
• hostname –i Lookup local ip address (equivalent to host
`hostname`)
• whois pixelbeat.org Lookup whois info for hostname or ip
address
• netstat –tupl List internet services on a system
Fedora 12 DF10A1ICT
24 | P a g e
• netstat –tup List active connections to/from system
windows networking (Note samba is the package that provides all this windows
specific networking support)
• Smbtree Find windows machines. See also findsmb
nmblookup -A 1.2.3.4 Find the windows (netbios) name
associated with ip address
smbclient -L windows_box List shares on windows machine or samba
server
mount -t smbfs -o fmask=666,guest
//windows_box/share /mnt/share Mount a windows share
echo 'message' | smbclient -M
windows_box
Send popup to windows machine (off by
default in XP sp2)
text manipulation (Note sed uses stdin and stdout. Newer versions support inplace
editing with the -i option)
sed 's/string1/string2/g' Replace string1 with string2
sed 's/\(.*\)1/\12/g' Modify anystring1 to anystring2
sed '/ *#/d; /^ *$/d' Remove comments and blank lines
sed ':a; /\\$/N; s/\\\n//; ta' Concatenate lines with trailing \
sed 's/[ \t]*$//' Remove trailing spaces from lines
sed 's/\([`"$\]\)/\\\1/g' Escape shell metacharacters active within
double quotes
• seq 10 | sed "s/^/ /; s/
*\(.\{7,\}\)/\1/" Right align numbers
sed -n '1000{p;q}' Print 1000th line
sed -n '10,20p;20q' Print lines 10 to 20
sed -n
's/.*<title>\(.*\)<\/title>.*/\1/ip;T;q' Extract title from HTML web page
sed -i 42d ~/.ssh/known_hosts Delete a particular line
sort -t. -k1,1n -k2,2n -k3,3n -k4,4n Sort IPV4 ip addresses
• echo 'Test' | tr '[:lower:]' '[:upper:]' Case conversion
Fedora 12 DF10A1ICT
25 | P a g e
• tr -dc '[:print:]' < /dev/urandom Filter non printable characters
• tr -s '[:blank:]' '\t' </proc/diskstats | cut
-f4 cut fields separated by blanks
• history | wc –l Count lines
set operations (Note you can export LANG=C for speed. Also these assume no
duplicate lines within a file)
sort file1 file2 | uniq Union of unsorted files
sort file1 file2 | uniq –d Intersection of unsorted files
sort file1 file1 file2 | uniq –u Difference of unsorted files
sort file1 file2 | uniq –u Symmetric Difference of unsorted files
join -t'\0' -a1 -a2 file1 file2 Union of sorted files
join -t'\0' file1 file2 Intersection of sorted files
join -t'\0' -v2 file1 file2 Difference of sorted files
join -t'\0' -v1 -v2 file1 file2 Symmetric Difference of sorted files
Math
• echo '(1 + sqrt(5))/2' | bc –l Quick math (Calculate φ). See also bc
• echo 'pad=20; min=64;
(100*10^6)/((pad+min)*8)' | bc
More complex (int) e.g. This shows max
FastE packet rate
• echo 'pad=20; min=64; print
(100E6)/((pad+min)*8)' | python Python handles scientific notation
•
echo 'pad=20; plot [64:1518]
(100*10**6)/((pad+x)*8)' | gnuplot –
persist
Plot FastE packet rate vs packet size
• echo 'obase=16; ibase=10; 64206' | bc Base conversion (decimal to hexadecimal)
• echo $((0x2dec)) Base conversion (hex to dec) ((shell
arithmetic expansion))
• units -t '100m/9.58s' 'miles/hour' Unit conversion (metric to imperial)
• units -t '500GB' 'GiB' Unit conversion (SI to IEC prefixes)
• units -t '1 googol' Definition lookup
• seq 100 | (tr '\n' +; echo 0) | bc Add a column of numbers. See
Fedora 12 DF10A1ICT
26 | P a g e
also add and funcpy
Calendar
• cal -3 Display a calendar
• cal 9 1752 Display a calendar for a particular month
year
• date -d fri What date is it this friday. See also day
• [ $(date -d "tomorrow" +%d) = "01" ] ||
exit
exit a script unless it's the last day of the
month
• date --date='25 Dec' +%A What day does xmas fall on, this year
• date --date='@2147483647' Convert seconds since the epoch (1970-01-
01 UTC) to date
• TZ='America/Los_Angeles' date What time is it on west coast of US (use
tzselect to find TZ)
•
date --
date='TZ="America/Los_Angeles"
09:00 next Fri'
What's the local time for 9AM next Friday
on west coast US
Locales
• printf "%'d\n" 1234 Print number with thousands grouping
appropriate to locale
• BLOCK_SIZE=\'1 ls –l Use locale thousands grouping in ls. See
also l
• echo "I live in `locale territory`" Extract info from locale database
• LANG=en_IE.utf8 locale int_prefix Lookup locale info for specific country.
See also ccodes
• locale | cut -d= -f1 | xargs locale -kc |
less List fields available in locale database
recode (Obsoletes iconv, dos2unix, unix2dos)
• recode -l | less Show available conversions (aliases on
each line)
recode windows-1252.. Windows "ansi" to local charset (auto does
Fedora 12 DF10A1ICT
27 | P a g e
file_to_change.txt CRLF conversion)
recode utf-8/CRLF.. file_to_change.txt Windows utf8 to local charset
recode iso-8859-15..utf8
file_to_change.txt Latin9 (western europe) to utf8
recode ../b64 < file.txt > file.b64 Base64 encode
recode /qp.. < file.qp > file.txt Quoted printable decode
recode ..HTML < file.txt > file.html Text to HTML
• recode -lf windows-1252 | grep euro Lookup table of characters
• echo -n 0x80 | recode latin-9/x1..dump Show what a code represents in latin-9
charmap
• echo -n 0x20AC | recode ucs-
2/x2..latin-9/x Show latin-9 encoding
• echo -n 0x20AC | recode ucs-2/x2..utf-
8/x Show utf-8 encoding
CDs
gzip < /dev/cdrom > cdrom.iso.gz Save copy of data cdrom
mkisofs -V LABEL -r dir | gzip >
cdrom.iso.gz Create cdrom image from contents of dir
mount -o loop cdrom.iso /mnt/dir Mount the cdrom image at /mnt/dir (read
only)
cdrecord -v dev=/dev/cdrom blank=fast Clear a CDRW
gzip -dc cdrom.iso.gz | cdrecord -v
dev=/dev/cdrom -
Burn cdrom image (use dev=ATAPI -
scanbus to confirm dev)
cdparanoia –B Rip audio tracks from CD to wav files in
current dir
cdrecord -v dev=/dev/cdrom -audio -
pad *.wav
Make audio CD from all wavs in current
dir (see also cdrdao)
oggenc --tracknum='track'
track.cdda.wav -o 'track.ogg' Make ogg file from wav file
disk space (See also FSlint)
Fedora 12 DF10A1ICT
28 | P a g e
• ls –lSr Show files by size, biggest last
• du -s * | sort -k1,1rn | head Show top disk users in current dir. See
also dutop
• du -hs /home/* | sort -k1,1h Sort paths by easy to interpret disk usage
• df –h Show free space on mounted filesystems
• df –i Show free inodes on mounted filesystems
• fdisk –l Show disks partitions sizes and types (run
as root)
•
rpm -q -a --qf
'%10{SIZE}\t%{NAME}\n' | sort -
k1,1n
List all packages by installed size (Bytes)
on rpm distros
• dpkg-query -W -f='${Installed-
Size;10}\t${Package}\n' | sort -k1,1n
List all packages by installed size (KBytes)
on deb distros
• dd bs=1 seek=2TB if=/dev/null
of=ext3.test
Create a large test file (taking no space).
See also truncate
• > file truncate data of file or create an empty file
monitoring/debugging
• tail -f /var/log/messages Monitor messages in a log file
• strace -c ls >/dev/null Summarise/profile system calls made by
command
• strace -f -e open ls >/dev/null List system calls made by command
• strace -f -e trace=write -e write=1,2 ls
>/dev/null Monitor what's written to stdout and stderr
• ltrace -f -e getenv ls >/dev/null List library calls made by command
• lsof -p $$ List paths that process id has open
• lsof ~ List processes that have specified path open
• tcpdump not port 22 Show network traffic except ssh. See
also tcpdump_not_me
• ps -e -o pid,args –forest List processes in a hierarchy
• ps -e -o List processes by % cpu usage
Fedora 12 DF10A1ICT
29 | P a g e
pcpu,cpu,nice,state,cputime,args --sort
pcpu | sed '/^ 0.0 /d'
• ps -e -orss=,args= | sort -b -k1,1n | pr -
TW$COLUMNS
List processes by mem (KB) usage. See
also ps_mem.py
• ps -C firefox-bin -L -o
pid,tid,pcpu,state List all threads for a particular process
• ps -p 1,$$ -o etime= List elapsed wall time for particular process
IDs
• last reboot Show system reboot history
• free –m Show amount of (remaining) RAM (-m
displays in MB)
• watch -n.1 'cat /proc/interrupts' Watch changeable data continuously
• udevadm monitor Monitor udev events to help configure rules
system information (see also sysinfo) ('#' means root access is required)
• uname –a Show kernel version and system
architecture
• head -n1 /etc/issue Show name and version of distribution
• cat /proc/partitions Show all partitions registered on the system
• grep MemTotal /proc/meminfo Show RAM total seen by the system
• grep "model name" /proc/cpuinfo Show CPU(s) info
• lspci –tv Show PCI info
• lsusb –tv Show USB info
• mount | column –t List mounted filesystems on the system
(and align output)
• grep -F capacity:
/proc/acpi/battery/BAT0/info Show state of cells in laptop battery
# dmidecode -q | less Display SMBIOS/DMI information
# smartctl -A /dev/sda | grep
Power_On_Hours
How long has this disk (system) been
powered on in total
# hdparm -i /dev/sda Show info about disk sda
Fedora 12 DF10A1ICT
30 | P a g e
# hdparm -tT /dev/sda Do a read speed test on disk sda
# badblocks -s /dev/sda Test for unreadable blocks on disk sda
interactive (see also linux keyboard shortcuts)
• readline
Line editor used by bash, python, bc,
gnuplot, ...
• screen Virtual terminals with detach capability, ...
• mc
Powerful file manager that can browse rpm,
tar, ftp, ssh, ...
• gnuplot Interactive/scriptable graphing
• Links Web browser
• xdg-open . open a file or url with the registered
desktop application
Table 1: Command Lines
(pixelbeat.org, 2008)
3.1.2 MDI
Menu Driven Interfaces aren‟t not very popular currently, since those have replaced
by the graphical user interface. But still MDIs are using in some places like pop- up
menus and drop down menus inside the GUI. Besides, best examples for a MDI
inside „fedora 12‟ operating system are the System Menu, Application Menu &
Places Menu.
Fedora 12 DF10A1ICT
31 | P a g e
Figure 27: Application Bar, Place Bar and System Bar.
3.1.3 GUI
Graphical User Interfaces are very popular in most of the operating systems which
got released within past ten years. Fedora 12 is also built up with a graphical user
interface
3.1.3.1 Desktop of a Fedora 12 Operating System
The desktop of the Fedora operating is based on the desktop project called GNOME
(GNU Network Object Model Environment). GNOME is a project that has provided
the desktop for LINUX computers. GNOME provides the user a desktop,
applications, panels, and set of tools which can customize the working environment
and to manage the user‟s system tasks.
GNOME is free software and part of the GNU project, dedicated to giving users and
developers the ultimate level of control over their desktops, their software, and their
data. GNOME desktop environment is an intuitive and attractive desktop for users,
and the GNOME development platform, an extensive framework for building
applications that integrate into the rest of the desktop. GNOME is supported by the
leading companies in GNU/Linux and UNIX, including HP, IBM, Mandriva, Novell,
Red Hat, and Sun. (gnome.org, 2010)
Fedora 12 DF10A1ICT
32 | P a g e
Figure 28 : GNOME logo
(gnome.org, 2010)
Fedora 12 includes GNOME 2.28 desktop environment. (Nestor, 2009)
Figure 29 - Fedora 12 GNOME desktop
(Gite, 2009)
3.1.3.2 Inbuilt Functions of the Fedora 12
(1) Terminal
(2) Workspace
(3) File Browser
Fedora 12 DF10A1ICT
33 | P a g e
(4) Appearance Preferences (Themes, backgrounds.)
(5) Sound Preferences
(6) Internet Applications (Firefox)
(7) Music Player (Rhythmbox)
(8) Video Player (Totem Movie Player)
(9) CD/DVD Burning Application ( Brasero 2.28.2 )
(10) System Monitor
(11) Gedit text Editor
3.2 Process Control Management
3.2.1 Process Control
Fedora 12 is a multitasking operating system where multiple processes can be run at
the same time. Fedora 12 is based on the Linux kernel version 2.6.31 which later on
updated to Linux kernel version 2.6.32.
Linux has several conflicting objectives. Such as,
Fast Process response time
Good throughput for background jobs
Avoidance of process starvation.
(www.inf.fu-berlin.de, 2001)
3.2.2 Process State
The process state describes the current condition of the process. There are five stages
where the process state happens in Linux.
TASK_RUNNING
In this state the process is currently running or on a run queue waiting
to run. This is the only possible state where a process can execute in a
user space.
TASK_INTERRUPTIBLE
Fedora 12 DF10A1ICT
34 | P a g e
In this state the process is blocked, and wait until a condition exist.
When the condition exists the kernel sets the process‟s state to
TASK_RUNNING.
TASK_UNINTERRUPTIBLE
This state is similar to TASK_INTERRUPTIBLE, but it doesn‟t wake
and become run able. This state is used in special situations where the
process expected to occur quickly. TASK_UNINTERRUPTIBLE is
less used compared to TASK INTERRUPTIBLE.
TASK_ZOMBIE
- In this state the task is terminated.
TASK_STOPPED
In this state the Process execution will be stopped
(www.inf.fu-berlin.de, 2001)
Fedora 12 DF10A1ICT
35 | P a g e
3.2.3 Thread
Thread is a lightweight process which execute independently in other parts of the
process. Each tread has a unique Tread ID, set of registers stack pointers, stack for
local variables, return addresses. Signal mask, priority and return value. Threads
function in the same way as processes.
Tread states in Linux
READY To run in the system scheduler
BLOCKED Waiting for a resource
RUNNING To run by the system scheduler
TERMINATED The thread has exited or called ptread_exit to exit
Table 2 : Tread States in Linux
(comptechdoc.org, 2010)
3.2.4 Multithreading
Two types of threading can be found in operating systems which are single treading
and multithreading. Fedora 12 uses multithreading which means the execution of a
Fedora 12 DF10A1ICT
36 | P a g e
single process with a multiple number of treads has enable the process to perform
multiple tasks. (Walton, 1996)
3.2.5 Process scheduling
Since there are two kernel versions in fedora 12 different scheduling algorithms are
used in the process. Following is how the process scheduling is done in fedora
12(Linux).
Linux uses a timesharing technique
In this technique each process is assigned a time slice to execute.
Linux process scheduling happens according to priority ranking.
In this scheduling process Linux uses a special technique known as dynamic
priorities which eliminate the starvation
In dynamic priorities the process which have not received the CPU for a
long time will get increased and the process that have received the CPU
often will get decreased.
Linux recognizes real-time programs and assigns them to high priority.
Linux does not recognize batch or interactive processes, instead it implicitly
favours I/O-bound processes
Linux uses process pre-emption.
The pre-empted process is temporally suspended, which is in the ready
queue.
Consider a text editor and a compiler.
Determining the length of the quantum.
(www.inf.fu-berlin.de, 2001)
3.2.6 Main aims of process scheduling
Fairness - to avoid starvation and check whether the faire time of the CPU
time all the processes get a
Response time - to decrease the response time
Efficiency - to get the maximum out of the CPU
Throughput - to increase the no of tasks at a given time
Turnaround time - to decrease the time between task running and the task
execution.
3.2.7 Process scheduling algorithms
Real time scheduling
First In First Out (FIFO) - First in first out is a real time algorithm. FIFO
means when the process scheduling is happening the first process started will
be the first to served out. These processes exits if it‟s rescheduled or if there
are other processes to be done.
Fedora 12 DF10A1ICT
37 | P a g e
Round Robin (RR) - Round robin is a real time process algorithm. In RR each
process gets a certain amount of time to execute their process and then it exit.
Each task rejoins the queue after it exits until the process is complete.
(Bovet & Cesati, 2000)
More information about Process Control Management can be found in
Appendix D.
3.3 Deadlock Management
3.3.1 Deadlock Definition
A set of processes is deadlocked if each process in the set is waiting for an event that
only another process in the set can cause (including itself).
(www1bpt.bridgeport.edu, 2010)
In this situation all the processes are waiting till responds by the process that they
requested for. In other words the event that each process is waiting for release of
some resource currently possessed by another member of the set. In this process none
of the processes can run. That could be happen including hardware and software.
(ibm.com, 2010)
Resources Categories in deadlock
Preemptable resources - preemptable resource is one that can be taken
away from the process without harming to it. Memory is the best
example for that.
Non-preemtable resource - in that case that cannot be taken away
from its current owner without causing to fail. As an example for that
when you burning a cd if you eject it before completion it‟ll occur
error.
Fedora 12 DF10A1ICT
38 | P a g e
3.3.2 Conditions for deadlocks
Mutual exclusion- resources can‟t share.
Hold and wait - when process request resources increase, its hold on
to what they‟ve got.
No preemption- resource can‟t get from the process forcibly.
Circular wait - circular chain of waiting is waiting for a resource
held by the next process in the chain.
3.3.3 Strategies for dealing with deadlocks
Ignore the problem altogether.
Detection and recovery.
Avoidance by careful resource allocation.
Prevention by structurally negating one of the four necessary conditions.
3.3.4 Deadlock Prevention
The system builds the way itself to solve the deadlock problem.
As a -
Attacking Mutex Condition
Never exclusive access
Attacking preemption
Not something you want to do.
Attacking hold and wait condition
Make a process hold at the most 1 resource at a time & make all the request at the beginning
Attacking circular wait
Order all the resources
Table 3 : Solutions for deadlock problem
Fedora 12 DF10A1ICT
39 | P a g e
Make sure that the requests are issued in the correct order. So in that case there is no
cycle present in the resource graph.
3.3.5 Deadlock Avoidance
Its avoid the action that may help to happen a deadlock. When your system avoid the
action that create deadlocks your system will be safe.
(www1bpt.bridgeport.edu, 2010)
3.4 Memory Management
3.4.1 Reverse Mapping In Fedora 12
In Fedora 12 Memory Manager Page table Tracking to physical pages of memory
that are used by a process, and they map the virtual pages to physical pages. Some of
memory pages might not used in long time. So in that case they swap out that
memory pages. Before they swapped out, every single process mapping that page
and found the page, so that page entry to the page table and process will be updated.
Now memory manager has each physical pages linked by using containing pointers
to page-table entries (PTEs) of every process currently mapping that page this link
list called PTE chain. The PTE chain increase the speed to finding the processors that
mapping a page.
Fedora 12 DF10A1ICT
40 | P a g e
the advantage of this reverse mapping system is that hold some memory overhead, in
that case some memory used to keep on track of all memory which reverse mapping,
each entry in PTE chain uses 4 bytes to store a pointer to the page-table entry and an
additional 4 bytes to store pointer to next entry on the chain. This memory also come
from 32 bit hardware which indicate low memory size. This can be optimized to a
single entry sometime. If there is only single mapping to the page, they used single
pointer called “direct”. It can use instead of a link list. If this page later mapped by
another process, the page will have to be converted to a PTE chain. (Larson, 2004)
3.4.2 Using Huge Pages In Linux Kernel 2.6
Huge pages is a technology that using in Linux kernel to avail the multiple page
memory size according to modern hardware architectures. Linux consider pages as
the basic unit of memory. In this case physical memory is divided and accessed using
the basic page unit. In the 32bit architecture use 4096 Bytes page size. In Linux
system, huge pages helps to reduce overhead memory.
Systems with large memory can be configured to utilize more efficiently using huge
pages. The actual size of the page depends on process and system architecture.
(unixfoo.blogspot.com, 2007)
More information about Using Huge Pages In Linux Kernel 2.6can be found in
Appendix E.
3.4.3 Storing page-table entries in high memory
Normally page-table are use in low memory in 32-bit machines. This memory also
pick it from first 896 MB memory slot of physical memory and using unused part of
the kernel as well. When most of applications using large number of memory and
map a lot of memory, low memory part would be decrease.
In new technology in 2.6 kernel page-table entries placed in high memory, to supply
freeing low memory space to other application can access. When we running lots of
processors and using high memory slots to storing page entry tables will allow to get
memory from low memory area.
Fedora 12 DF10A1ICT
41 | P a g e
Memory using in high memory slot
(ibm.com, 2010)
Fedora 12 DF10A1ICT
42 | P a g e
3.5 Virtual Memory Management
3.5.1 Abstract model of Virtual to Physical address mapping
Figure 30 : Abstract model of Virtual to Physical address mapping
3.5.2 Page Frame Reclamation
In 2.6 kernel system there is a new function kswapd called kswapd. In every
memory node of the system started from kswapd. They all execute same code except
their work confined to their local node. The main changes in this technology are
related to the kaswapd-per-node change.
3.5.3 Swap memory management
Most important part of the new additions in virtual memory is this. In this case they
introduced a new system to map a contiguous range of pages in the swap area into a
contiguous range of disk blocks. They added another addition to swap on time.
3.5.4 Shared Memory Virtual File System
In the new system they added function called alloced. The alloced field stores how
many data pages are allocated to the file which had to be calculated. The major
Fedora 12 DF10A1ICT
43 | P a g e
change of this area is file system is responsible for the allocation and destruction of
its own inodes (inode is based on 2.4 kernel system). (Gorman, 2007)
3.5.5 Demand Paging
If there‟s less physical memory than virtual memory the operation system must take
virtual memory. It doesn‟t choose physical memory. One way to save physical
memory is only load virtual pages that are currently used by the executing program.
(Rusling, 1999)
More information about Virtual Memory Management can be found in Appendix A.
3.6 Secondary Disk Scheduling Management
In fedora 12 Linux kernel 2.6 there are five types of disk scheduling algorithms used.
Which are :
First Come First Serve
Elevator
Cyclic Elevator
Deadline Scheduling
Anticipatory Scheduling
More information about Secondary Disk Scheduling Management can be found in
Appendix C.
3.7 System Administration and Support
Fedora 12 can be divided into two major areas in system administration and support.
Which are:
Installation
HOWTOs
3.7.1 Installation
Installation can be divided into several areas such as:
Pre-Installation Tasks
Installation
Fedora 12 DF10A1ICT
44 | P a g e
Post Installation Changes
Fedora 12 Installation is very easy compared to other operating systems. It provides a
good GUI which is very user friendly even a beginner can install without any issues.
During the installation fedora 12 is mainly concern about the root password where
the user has to enter. The password should be minimum six characters n should
contains numerical and alphabetical characters and also one special character. Where
it ensures that no one can crack it.
3.7.2 HOWTOs
In HOWTOs every component is supported by the system administration and support
of fedora 12. There are few components in HOWTOs.
Table 4 : Components in HOWTOs
(Professor Gregory R. Kriehn,2007)
Components in HOWTOs
Internet Access Security
Programming Applications Network/File system Services &
Applications
E-Mail & Spam Apache/MySQL/PHP Services &
Applications
Hosting a Yum Repository Enlightenment DR17 (E17)
Gnome Applications & Settings Gnome Applications & Settings
Laptop & General Settings Google Applications
Multimedia-Based Applications & Setup Drawing & Image Manipulation
Programs
Setup for Installing Applications General Utilities
Fedora 12 DF10A1ICT
45 | P a g e
3.7.3 System Administration Tools
Since fedora 12 is a Linux base operating system it supports with the same Linux
system administration tools. There are four major players in the Linux system
administration tools.
COAS
Linuxconf
Webmin
YaST
More information about System Administration Tools can be found in Appendix
B.
3.8 Recovery Strategies
There are few ways of recovering data in fedora 12 which is based on Linux.
Rollback Action
Backup files
3.8.1 Rollback Action
Rollback can be done using a tool call RPM. RPM is a useful tool which has several
options. But out of all of them the best is where it can recover a deleted file which
has accidently lost. In fedora 12 a small coding will recover the deleted file. Simply
type the date r time to rollback to that previous system data.
rpm -Uvh -rollback 'date/time‟
(linuxquestions.org/, 2006)
3.8.2 Backup files
We can use typical recovery strategies to take backups
Servers
External hard disks
DVD
Flash drivers
Fedora 12 DF10A1ICT
46 | P a g e
3.9 Security Strategies
Fedora 12 has implemented according to standard security model known as CIA. It is
capable to estimate the sensitiveness of the information and to provide a dependable
security policy. CIA is defined as Confidentiality, Integrity and Availability.
Confidentiality: Sensitive information must be available only to a set of pre-defined
individuals. Unauthorized transmission and usage of information
should be restricted.
Integrity Information should not be altered in ways that render it incomplete or
incorrect. Unauthorized users should be restricted from the ability to
modify or destroy sensitive information
Availability Information should be accessible to authorized users any time that it is
needed. Availability is a warranty that information can be obtained
with an agreed-upon frequency and timeliness.
Table 5 : C.I.A Definition Table
(Fuller et al., 2009)
Computer Security has divided in to three categories commonly referred as controls.
They are as follows:
Physical
Technical
Administrative (Fuller et al., 2009)
3.9.1 Security tools in Fedora 12
Scanning Hosts with Nmap
Nessus
Nikto
VLAD the Scanner
Fedora 12 DF10A1ICT
47 | P a g e
(Fuller et al., 2009)
3.9.2 Workstation Security
BIOS and Boot Loader Security
Password Security
Administrative Controls:
Available Network Services
Personal Firewalls
Security Enhanced Communication Tools
(Fuller et al., 2009)
3.10 Standard Support
Bugs and errors occur in any kind of an operating system, in any environment. And
the user must have a brief idea how to overcome from those when it occurred. Fedora
12 has provided all the necessary guide lines and support which will assist them to
overcome from those errors. Solving error through internet have become more
popular these days, and therefore fedora 12 have provided all the necessary
assistance through the internet.
3.10.1 Fedora 12 Forum
HTML : http://www.fedoraforum.org/
3.10.2 Burning ISO image to a disc
HTML : http://docs.fedoraproject.org/en-
US/Fedora/12/html/Burning_ISO_images_to_disc/index.html
PDF :http://docs.fedoraproject.org/en-
US/Fedora/12/pdf/Burning_ISO_images_to_disc/Fedora-12-
Burning_ISO_images_to_disc-en-US.pdf
3.10.3 Installation Guide
HTML : http://docs.fedoraproject.org/en-
US/Fedora/12/html/Installation_Guide/index.html
Fedora 12 DF10A1ICT
48 | P a g e
PDF :http://docs.fedoraproject.org/en-
US/Fedora/12/pdf/Installation_Guide/Fedora-12-Installation_Guide-en-
US.pdf
3.10.4 Quick Start Guide
HTML : http://docs.fedoraproject.org/en-
US/Fedora/12/html/Installation_Quick_Start_Guide/index.html
PDF : http://docs.fedoraproject.org/en-
US/Fedora/12/pdf/Installation_Quick_Start_Guide/Fedora-12-
Installation_Quick_Start_Guide-en-US.pdf
3.10.5 User Guide
HTML : http://docs.fedoraproject.org/en-
US/Fedora/12/html/User_Guide/index.html
PDF : http://docs.fedoraproject.org/en-
US/Fedora/12/pdf/User_Guide/Fedora-12-User_Guide-en-US.pdf
3.10.6 Wireless Guide
HTML : http://docs.fedoraproject.org/en-
US/Fedora/12/html/Wireless_Guide/index.html
PDF : http://docs.fedoraproject.org/en-
US/Fedora/12/pdf/Wireless_Guide/Fedora-12-Wireless_Guide-en-US.pdf
3.10.7 Other Fedora 12 Documentations
HTML : http://docs.fedoraproject.org/en-US/index.html
4. Appendix
Appendix A: Virtual Memory Management (3.5)
Page Table Management
In 2.6 kernel they introduced new functions.
Fedora 12 DF10A1ICT
49 | P a g e
1. MMU-less Architecture Support
2. Reverse Mapping
3. Object-Based Reverse Mapping
4. PTE in High Memory
5. Huge TLB Filesystem
6. Cache Flush Management
Process Address Space
Changes in 2.6 kernel
1. Linear Address Space
2. Write page
3. Memory Region
4. Page Faulting
5. Kernel Split
Boot Memory Allocator
This is not changed since 2.4 kernel. They mainly think about the optimisation and
NUMA related modification. First changes is the addition of a last_success field to
the bootem_data_tstruct. What it does is keep track location of the last allocation to
reduce the time. If an address is freed before last_success, it‟ll be changed to freed
location
Physical Page Allocation
In 2.6 kernel they made changes to Allocating Pages system. In 2.4 kernel system
there was specific code for selecting the correct node form the running CPU. But 2.6
removes this distinction between NUMA and UMA architecture.
In Per-CPU Page Lists pages are allocated from a structper_cpu_pageset by
buffered_rmqueue(). In the low watermark (per_cpu_pageset→low) has not been
reached. The pages will be allocated from the pageset with no requirement for
spinlock to be held. One the low watermark is reached, a large number of pages will
be allocated in bulk with the interrupt safe spinlock held. Added to the per-cpu list
and then one returned to the caller.
Fedora 12 DF10A1ICT
50 | P a g e
In freeing pages side they introduced code called free_hot_page() and
free_cold_page() to handle the pages.
Non Contiguous Memory Allocation
Non-contiguous memory allocation work same as a 2.4 kernel system. The main
difference in 2.6 kernel is slightly different internal API which affects when the
pages are allocated. In kernel 2.4 vmalloc_area_pages() is responsible for beginning
a page table walk and then allocating pages when the PTE is reached in the function
alloc_area_pte(). In 2.6 kernel all the pages are advance by __vmalloc() and placed
in an array which is passed to map_vm_area() for insertion into the kernel page
tables.
The get_vm_area() API has changed in kernel 2.6 and it behave the same as
previous versions and it searches the entire vmalloc virtual address space for a free
area and caller can search subset of the vmalloc address space by calling
__get_vm_area() directly and specifying the range. This system only used by ARM
architecture.
The new interface of vmap() an array of pages in the vmalloc address space
and is only used by the sound subsystem core.
Slab Allocater
In fedora 12 they changed slab allocater system completely. Because previous
version of /proc/slabinfo format version 1.1 changed to 2.0. but principle and
algorithm and ideas is same as previous. So it has a technology to avoidance of
locking. There‟s a lot of debugging code mixed in so keep searching for #ifdef
DEBUG blocks of code and they can ignored them when reading the code.
Other changes in 2.0 has very similar behaviour. As an example
kmem_cache_estimate() is now called cache_estimate().
In cash static flags side in fedora 12 introduced two new flags for slab allocator
*Slab_store_user
Fedora 12 DF10A1ICT
51 | P a g e
*Slab_Reclaim_account
In cache Reaping This is the best part of changes in slab allocator.
Kmem_cache_reap() no longer exist as it‟s very indiscriminate in how it shrinks
caches when cache user could have made a far superior selection. Users of cache can
now register a “shrink cache” callback with set_shrinker() for the intelligent aging
and shrinking of slabs. This simple function populates a structshrinker with a pointer
to the callback and a “seeks” weight which indicates how difficult it is to recreate an
object before placing it in a link list called shrinker_list.
Appendix B: System Administration Tools (3.7.3)
Linuxconf
It‟s a system administration tool where we can navigate text or point and click menus
to access a wide variety of system settings of fedora 12. Linuxconf mainly deals with
the people who refused to use root password, where Linuxconf will not allow the
user to proceed further.
COAS
COAS is a administration tool which is available in moset linux distributors. This
tools comes in four differen formats. In this tool it loads only the important features
into memory when you work with it.
Webmin
Webmin is a web-based application which is mostly available for modern Linux
distributors. Any user can install Webmin it must be installed by root. After
installation we can access this tool by any user account.
YaST
YaST tool consists of all user administration, security settings and installation of
other software, Updates of the entire system, network settings etc. YaST was not
installed with GUI, where the new tool called YaST 2 which comes with SuSE has a
GUI. Mainly YaST is like the Control panel of the system. (Dee-Ann LeBlanc,2002)
Fedora 12 DF10A1ICT
52 | P a g e
Appendix C: Secondary Disk Scheduling Management (3.6)
First Come First Serve
In this algorithm the request are served accordingly to their arrival order. Where the
first to enter will be the first to leave. (cs.nmu.edu, n.d)
Elevator
This algorithm has the same behavior of an elevator where the elevator continues to
travel up and down until a request has been made. The requests are accepted
according to the priority order and continue until the lowest request reach. This
process repeats until the task complete. (m_turner, 2000) (everything2.com, 2000)
Cyclic Elevator
In this algorithm the elevator moves from top to bottom where it only consider the
requests made along the way to bottom, when it reach the bottom it goes back to the
highest request made and repeat the process. Compared to other algorithms cyclic
algorithm is fair to all requests, has a great performance and real time processing.
(linuxhowtos.org, 2010)
Deadline Scheduling
In this algorithm each request has given a deadline. When the request reaches the
deadline it moves directly to that request and serviced immediately to maintain the
efficiency of the process. Therefore this algorithm maintains the disk latency low
where as the disk efficiency high. (domingo.sourceforge.net, 2008)
Anticipatory Scheduling
In this algorithm the read operations are usually synchronous. This means the first
request has to happen and report back before the second request is scheduled.
Appendix D: Process Control Management (3.2)
Improved treading model for 2.6 Linux kernel
The 2.6 Linux kernel introduces a new, improved threading model that is
implemented through the NPTL. The adoption of a new threading model has
Fedora 12 DF10A1ICT
53 | P a g e
significant implications for developers, system run-time libraries such as the GNU C
library (glibc), shared application libraries, and so on. This white paper provides an
overview of basic threading concepts, discusses new and existing Linux threading
models, and then highlights the sorts of application changes that you might have to
make to existing multi-threaded applications in order to enable them to work
correctly with NPTL under the 2.6 Linux kernel. (linuxinme.blogspot.com, 2007)
Pthread
Pthreds refers to the POSIX standard (IEEE 1003.1c) defining an API for thread
creation and synchronization. This is a specification for thread behavior, not an
implementation. Operating system designers may implement the specification in any
way they wish. (Silberschatz, 2006)
Along with POSIX threads, 2.6 provide POSIX signals and POSIX high-resolution
timers as part of the mainstream kernel. POSIX signals are an improvement over
UNIX-style signals, which were the default in previous Linux releases. Unlike UNIX
signals, POSIX signals cannot be lost and can carry information as an argument.
Also, POSIX signals can be sent from one POSIX thread to another, rather than only
from process to process, like UNIX signals. (Deshpande, 2004)
Appendix E : Using huge Pages in Linux Kernel 2.6 (3.4.2)
Linux uses “Transaction Lookaside Buffers” (TLB) in the CPU architecture. In this
technology restrain mapping of virtual memory to actual memory addresses. So
using huge size of physical memory with the default page size consumes the TLB
and adds processing overhead.
Linux kernel system able to set addressed of physical memory using a large page
files. When the memory page is higher, the pages with the TLB will be less overhead
managing. In kernel 2.6 they have a feature called “CONFIG_HUGETLB_PAGE to
control huge pages.
Fedora 12 DF10A1ICT
54 | P a g e
Appendix F : Kernels
Kernel 2.6.31: This version adds USB 3.0 support, an equivalent of FUSE for
character devices used for proxying OSS sound to ALSA, some memory
management changes that improve interactivity in desktops, read ahead
improvements, ATI Radeon Mode setting support, support for Intel's Wireless
Multicomm 3200 Wi-Fi devices, kernel support and a user space tool for
performance counters, gcov support, a memory checker for uninitialized memory, a
memory leak detector, a reimplementation of inotify and dnotify on top of a new file
system notification infrastructure, btrfs improvements, support for the IEEE 802.15.4
network standard, IPv4 over Firewall, many new drivers, small improvements and
fixes. (kernelnewbies.org, 2009)
Appendix G : X Windows
Further, it includes couple of automatic configuration feature for the X server. The X
Window System is using a CSA (Client Server Architecture). In default graphical
environment of fedora, the X configuration tool is available at following: path.
System > Administration > Display.
Fedora 12 DF10A1ICT
55 | P a g e
5. Conclusion
Fedora 12 is based on Linux 2.6 kernel which is a free open source operating
system where any changes can be made to the operating system by the user
according to his will. It‟s a free distributable operating system where we can
easily download from the fedora website.
Compared to other operating system Fedora 12 has a GUI which is user
friendly and also it has more options than the previous versions. Since it
needs less hard disk space, low processor and low random access memory it
can be installed in and old machines easily.
Since fedora 12 is less vulnerable to viruses it is more secure when compared
to other operating systems. Fedora 12 is a non profitable organization which
depends on users where it gives the full authority to develop software‟s for
fedora 12.
Fedora is a unique operating system with lots of features and improved
graphics where it helps different communities to do their work easily and also
it‟s a free open source environment where anyone can communicate in the
world.
.
Fedora 12 DF10A1ICT
56 | P a g e
6. References/Bibliography
Arkeia, 2010. [Online] Available at: HYPERLINK
"http://www.arkeia.com/products/index.php?_kk=d555ddb4-e529-4fbc-9294-
a942005cdc63&_kt=5103555625&gclid=CNPx_JWkxqMCFd_-2Aod_2XTYg"
http://www.arkeia.com/products/index.php?_kk=d555ddb4-e529-4fbc-9294-
a942005cdc63&_kt=5103555625&gclid=CNPx_JWkxqMCFd_-2Aod_2XTYg
[Accessed 16 Augustus 2010].
Bovet, D.P. & Cesati, M., 2000. Understanding the Linux Kernel Chapter 10.
[Online] Available at: HYPERLINK
"http://oreilly.com/catalog/linuxkernel/chapter/ch10.html"
http://oreilly.com/catalog/linuxkernel/chapter/ch10.html [Accessed 16 December
2010].
Bovet, D.P. & Cesati, M., 2005. Understanding the Linux Kernel. 3rd ed. O'Reilly.
Breuer, P.T. & Valls, M.G., 2004. Static Deadlock Detection in the Linux Kernel. In
A. Llamos & A. Strohmeier, eds. Reliable Software Technologies - Ada-Europe
2004. 30632004th ed. Spain: Springer Berlin / Heidelberg. pp.52-64.
http://www.springerlink.com/content/j5e5fn1w6w43muru/ ;
http://books.google.lk/books?id=j2dYATF2jmQC.
Burleson, 2009. [Online] Available at: HYPERLINK "http://www.rampant-
books.com/t_linux_14_virtual_memory_statistics.htm" http://www.rampant-
books.com/t_linux_14_virtual_memory_statistics.htm [Accessed 16 Augustus
2010].
comptechdoc.org, 2010. Linux Threads. [Online] Available at: HYPERLINK
"http://www.comptechdoc.org/os/linux/programming/c/linux_pgcthreads.html"
http://www.comptechdoc.org/os/linux/programming/c/linux_pgcthreads.html
[Accessed 17 December 2010].
Fedora 12 DF10A1ICT
57 | P a g e
domingo.sourceforge.net, 2008. [Online] Available at: HYPERLINK
"http://domingo.sourceforge.net/" http://domingo.sourceforge.net/ [Accessed 18
December 2010].
everything2.com, 2000. Elevator algorithm. [Online] Available at: HYPERLINK
"http://everything2.com/title/Elevator+algorithm"
http://everything2.com/title/Elevator+algorithm [Accessed 20 December 2010].
fedoraproject.org, 2010. About Fedora. [Online] Available at: HYPERLINK
"http://fedoraproject.org/en/about-fedora" http://fedoraproject.org/en/about-fedora
[Accessed 30 November 2010].
Fourdan, O., 2010. Terminal. [Online] Available at: HYPERLINK
"http://www.xfce.org/projects/terminal/" http://www.xfce.org/projects/terminal/
[Accessed 2 August 2010].
Fuller, J. et al., 2009. Fedora 12 Security Guide. [Online] Red Hat Available at:
HYPERLINK "http://docs.fedoraproject.org/en-
US/Fedora/12/pdf/Security_Guide/Fedora-12-Security_Guide-en-US.pdf"
http://docs.fedoraproject.org/en-US/Fedora/12/pdf/Security_Guide/Fedora-12-
Security_Guide-en-US.pdf [Accessed 21 December 2010].
Fuller, J. et al., 2009. Securing your Network. [Online] Red Hat Available at:
HYPERLINK "http://docs.fedoraproject.org/en-
US/Fedora/12/html/Security_Guide/chap-Security_Guide-
Securing_Your_Network.html" http://docs.fedoraproject.org/en-
US/Fedora/12/html/Security_Guide/chap-Security_Guide-
Securing_Your_Network.html [Accessed 29 December 2010].
Gite, V., 2009. Download Fedora 12 CD / DVD ISO. [Online] Available at:
HYPERLINK "http://www.cyberciti.biz/tips/fedora-12-download-cd-dvd-iso.html"
http://www.cyberciti.biz/tips/fedora-12-download-cd-dvd-iso.html [Accessed 28
December 2010].
Fedora 12 DF10A1ICT
58 | P a g e
GNOME Project, T., 2010. What is GNOME? [Online] Available at: HYPERLINK
"http://www.gnome.org/about/" http://www.gnome.org/about/ [Accessed 01 August
2010].
gnome.org, 2010. What is GNOME? [Online] Available at: HYPERLINK
"http://www.gnome.org/about/" http://www.gnome.org/about/ [Accessed 27
December 2010].
Gorman, M., 2007. understanding the linux virtual memory manager. [Online]
Kernel.org Available at: HYPERLINK
"http://www.kernel.org/doc/gorman/pdf/understand.pdf"
http://www.kernel.org/doc/gorman/pdf/understand.pdf [Accessed 18 December
2010].
ibm.com, 2010. IBM. [Online] Available at: HYPERLINK
"http://www.ibm.com/developerworks/power/library/pa-soc5/deadlock.gif"
http://www.ibm.com/developerworks/power/library/pa-soc5/deadlock.gif [Accessed
17 December 2010].
Johnray Fuller, J.H.D.O.S.R.E.C.A.L., 2009. Securing your Network. [Online] Red
Hat, Inc. Available at: HYPERLINK "http://docs.fedoraproject.org/en-
US/Fedora/12/html/Security_Guide/chap-Security_Guide-
Securing_Your_Network.html" http://docs.fedoraproject.org/en-
US/Fedora/12/html/Security_Guide/chap-Security_Guide-
Securing_Your_Network.html [Accessed 05 Augustus 2010].
Johnray Fuller, J.H.D.O.S.R.E.C.A.L., 2009. Security Overview. [Online] Red Hat,
Inc Available at: HYPERLINK "http://docs.fedoraproject.org/en-
US/Fedora/12/html/Security_Guide/chap-Security_Guide-Security_Overview.html"
http://docs.fedoraproject.org/en-US/Fedora/12/html/Security_Guide/chap-
Security_Guide-Security_Overview.html [Accessed 05 August 2010].
kernelnewbies.org, 2009. Linux 2 6 31. [Online] Available at: HYPERLINK
"http://kernelnewbies.org/Linux_2_6_31" \l "head-
Fedora 12 DF10A1ICT
59 | P a g e
6004ec219c203c60037057dbebaf0a04fe22f19c"
http://kernelnewbies.org/Linux_2_6_31#head-
6004ec219c203c60037057dbebaf0a04fe22f19c [Accessed 29 December 2010].
Larson, P., 2004. [Online] Available at: HYPERLINK
"http://www.ibm.com/developerworks/linux/library/l-mem26/"
http://www.ibm.com/developerworks/linux/library/l-mem26/ [Accessed 2 Augustus
2010].
Li, T., Ellis, C.S., Lebeck, A.R. & Sorin, D.J., 2005. Pulse: A Dynamic Deadlock
Detection Mechanism Using Speculative Execution. In Li, T., Ellis, C.S., Lebeck,
A.R. & Sorin, D.J., eds. USENIX Annual Technical Conference. California, 2005.
linuxhowtos.org, 2010. Switching IO Schedulers on runtime. [Online] Available at:
HYPERLINK "http://www.linuxhowtos.org/System/iosched.htm"
http://www.linuxhowtos.org/System/iosched.htm [Accessed 19 December 2010].
linuxinme.blogspot.com, 2007. Thread Library changes between 2.4 and 2.6 Linux
Kernels. [Online] Available at: HYPERLINK
"http://linuxinme.blogspot.com/2007/05/thread-library-changes-between-24-
and_1763.html" http://linuxinme.blogspot.com/2007/05/thread-library-changes-
between-24-and_1763.html [Accessed 17 December 2010].
linuxquestions.org/, 2006. how to do rollback with the same package name using
RPM. [Online] Available at: HYPERLINK
"http://www.linuxquestions.org/questions/general-10/how-to-do-rollback-with-the-
same-package-name-using-rpm-645297/"
http://www.linuxquestions.org/questions/general-10/how-to-do-rollback-with-the-
same-package-name-using-rpm-645297/ [Accessed 19 December 2010].
livinginternet.com, 2010. Linux History. [Online] Available at: HYPERLINK
"http://www.livinginternet.com/i/iw_unix_gnulinux.htm"
http://www.livinginternet.com/i/iw_unix_gnulinux.htm [Accessed 22 December
2010].
Fedora 12 DF10A1ICT
60 | P a g e
Love, R., 2005. Linux Kernel Development Second Edition. the United States of
America: Sams Publishing.
Meyer, O., 2008. [Online] Available at: HYPERLINK
"http://www.howtoforge.com/creating-backups-with-areca-on-fedora9"
http://www.howtoforge.com/creating-backups-with-areca-on-fedora9 [Accessed 16
Augustus 2010].
Negus, C., 2009. Linux Bible. 2009th ed. Indiana: Wiley Publishing, Inc.
Negus, C. & Foster-Johnson, E., 2010. Fedora Bible. 2010th ed. Canada: Wiley
Publishing, Inc.
Nestor, M., 2009. Fedora 12 Officially Released. [Online] Available at:
HYPERLINK "http://news.softpedia.com/news/Fedora-12-Officially-Released-
127223.shtml" http://news.softpedia.com/news/Fedora-12-Officially-Released-
127223.shtml [Accessed 2010 December 28].
Nestor, M., 2010. Softpedia. [Online] Available at: HYPERLINK
"http://news.softpedia.com/news/Fedora-12-Officially-Released-127223.shtml"
http://news.softpedia.com/news/Fedora-12-Officially-Released-127223.shtml
[Accessed 31 July 2010].
Ozdogan, C., 2010. Methods for Handling Deadlocks. [Online] Available at:
HYPERLINK
"http://siber.cankaya.edu.tr/ozdogan/OperatingSystems/week8/node6.html"
http://siber.cankaya.edu.tr/ozdogan/OperatingSystems/week8/node6.html [Accessed
01 August 2010].
pixelbeat.org, 2008. pixelbeat. [Online] Available at: HYPERLINK
"http://www.pixelbeat.org/cmdline.html" http://www.pixelbeat.org/cmdline.html
[Accessed 10 December 2010].
Fedora 12 DF10A1ICT
61 | P a g e
Project Team, T., 2009. Fedora Docs Release Notes. [Online] Available at:
HYPERLINK "http://docs.fedoraproject.org/en-US/Fedora/12/html/Release_Notes/"
http://docs.fedoraproject.org/en-US/Fedora/12/html/Release_Notes/ [Accessed 2
August 2010].
Rusling, D.A., 1996. [Online] Available at: HYPERLINK
"http://www.science.unitn.it/~fiorella/guidelinux/tlk/node26.html"
http://www.science.unitn.it/~fiorella/guidelinux/tlk/node26.html [Accessed 16
Augustus 2010].
Rusling, D.A., 1999. Chapter 3 Memory Management. [Online] LDP Available at:
HYPERLINK "http://tldp.org/LDP/tlk/mm/memory.html"
http://tldp.org/LDP/tlk/mm/memory.html [Accessed 19 December 2010].
Silas, D. et al., 2009. Fedora 12 Deployment Guide. [Online] Red Hat Available at:
HYPERLINK "https://docs.fedoraproject.org/en-
US/Fedora/12/pdf/Deployment_Guide/Fedora-12-Deployment_Guide-en-US.pdf"
https://docs.fedoraproject.org/en-US/Fedora/12/pdf/Deployment_Guide/Fedora-12-
Deployment_Guide-en-US.pdf [Accessed 21 December 2010].
Silberschatz, A., Galvin, P.B. & Gagne, G., 2005. Operating System Concepts. 7th
ed. Palatino: John Wiley & Sons, Inc.
spinics.net, 2010. [SECURITY] Fedora 12 Update: kernel-2.6.32.16-141.fc12.
[Online] Available at: HYPERLINK "http://www.spinics.net/lists/fedora-package-
announce/msg44060.html" http://www.spinics.net/lists/fedora-package-
announce/msg44060.html [Accessed 29 December 2010].
Sundaram, R., 2010. Gnote. [Online] Available at: HYPERLINK
"http://live.gnome.org/Gnote" http://live.gnome.org/Gnote [Accessed 2 August
2010].
Team, T.F.D., 2009. Fedora 12 Release Notes. [Online] Red Hat Available at:
HYPERLINK "http://docs.fedoraproject.org/en-
Fedora 12 DF10A1ICT
62 | P a g e
US/Fedora/12/pdf/Release_Notes/Fedora-12-Release_Notes-en-US.pdf"
http://docs.fedoraproject.org/en-US/Fedora/12/pdf/Release_Notes/Fedora-12-
Release_Notes-en-US.pdf [Accessed 30 November 2010].
The Fedora Docs Team, R.H.I., 2009. Fedora Documentation. [Online] Available at:
HYPERLINK "http://docs.fedoraproject.org/en-
US/Fedora/12/html/Release_Notes/index.html" \l "sect-Release_Notes-
Hardware_Requirements" http://docs.fedoraproject.org/en-
US/Fedora/12/html/Release_Notes/index.html#sect-Release_Notes-
Hardware_Requirements [Accessed 23 July 2010].
tldp, n.d. [Online] Available at: HYPERLINK "http://tldp.org/LDP/sag/html/buffer-
cache.html" http://tldp.org/LDP/sag/html/buffer-cache.html [Accessed 2 Augustus
2010].
unixfoo.blogspot.com, 2007. linux - storage - virtualization. [Online] Available at:
HYPERLINK "http://unixfoo.blogspot.com/2007/10/hugepages.html"
http://unixfoo.blogspot.com/2007/10/hugepages.html [Accessed 18 December
2010].
Walton, S., 1996. Linux Threads Frequently Asked Questions (FAQ). [Online]
Available at: HYPERLINK "http://linas.org/linux/threads-faq.html"
http://linas.org/linux/threads-faq.html [Accessed 16 December 2010].
www.inf.fu-berlin.de, 2001. Linux processes (3.5.2001). [Online] Institut für
Informatik Available at: HYPERLINK "http://www.inf.fu-
berlin.de/lehre/SS01/OS/Lectures/Lecture05.pdf" http://www.inf.fu-
berlin.de/lehre/SS01/OS/Lectures/Lecture05.pdf [Accessed 16 December 2010].
www1bpt.bridgeport.edu, 2010. Operating Systems (CS/CPE 408) : Deadlocks and
Deadlock Avoidance. [Online] Available at: HYPERLINK
"http://www1bpt.bridgeport.edu/sed/projects/cs503/Spring_2001/kode/os/deadlock.h
tm"
Fedora 12 DF10A1ICT
63 | P a g e
http://www1bpt.bridgeport.edu/sed/projects/cs503/Spring_2001/kode/os/deadlock.ht
m [Accessed 16 December 2010].
zmanda, 2010. [Online] Available at: HYPERLINK
"http://www.zmanda.com/?gclid=CJSo39ukxqMCFRZf4wod-G5UZA"
http://www.zmanda.com/?gclid=CJSo39ukxqMCFRZf4wod-G5UZA [Accessed 16
Augustus 2010].
Fedora 12 DF10A1ICT
64 | P a g e
7. Work Breakdown Structure
Fedora 12 DF10A1ICT
65 | P a g e
8. Weekly Meeting Reports
Meeting Number: 1
Date: 24th
November 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Prmod Madushan (CB004138) Present
Minutes:
Study Area Description
1. Discussed What we going to choose? We decided operation system for our
assignment
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
66 | P a g e
Meeting Number: 2
Date: 25th
November 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
1. Dividing the work load Each of took part of the project to do and
discussed
2. Found details Found details about hardware
requirements, system requirements, history
of fedora 12, introduction to the operating
system.
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
67 | P a g e
Meeting Number: 3
Date: 30th
November 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
Installing fedora 12 Each of us installed fedora 12. Got the
basic knowledge of installing fedora 12
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
68 | P a g e
Meeting Number: 4
Date: 3rd
November 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
Installing and taking screenshots Took all the screen shorts needed make the
repot.
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
69 | P a g e
Meeting Number: 5
Date: 6th
December 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
1. Discuss about the analysis part Discuss where to find the details what is
the structure how are we suppose.
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
70 | P a g e
Meeting Number: 6
Date: 08th
December 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
1. Analyzed all the details we found on the
analysis.
Discussed all the details we found on
analysis part and analyzed all the details.
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
71 | P a g e
Meeting Number: 7
Date: 23th
December 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
Finalizing project Finalized all the details we found and put
them according to document order.
…………………… …………………
(Lecture) (Team Leader)
Fedora 12 DF10A1ICT
72 | P a g e
Meeting Number: 8
Date: 24th
December 2010
Venue: APIIT Sri Lanka, Colombo.
Members attended:
Name of the member CB Number Attendance
Hirosh Tharaka (CB004149) Present
Shohan Dassanayake (CB004060) Present
Promod Madushan (CB004138) Present
Minutes:
Study Area Description
Finalizing Document Finalized the document did all the typing,
discuss about the places where we went
wrong made them correct.
…………………… …………………
(Lecture) (Team Leader)