0% found this document useful (0 votes)
20 views56 pages

Unix and Shell Programming Anoop Chaturvedi BL Rai Instant Download

The document is a comprehensive guide to Unix and Shell programming, authored by Anoop Chaturvedi and B.L. Rai. It covers various aspects of Unix, including its development, operating system services, file systems, process control, and shell scripting, along with exercises for practical understanding. The book serves as a textbook for operating systems courses and a reference for system programmers and application developers.

Uploaded by

jeinervunk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views56 pages

Unix and Shell Programming Anoop Chaturvedi BL Rai Instant Download

The document is a comprehensive guide to Unix and Shell programming, authored by Anoop Chaturvedi and B.L. Rai. It covers various aspects of Unix, including its development, operating system services, file systems, process control, and shell scripting, along with exercises for practical understanding. The book serves as a textbook for operating systems courses and a reference for system programmers and application developers.

Uploaded by

jeinervunk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 56

Unix And Shell Programming Anoop Chaturvedi Bl

Rai download

https://ebookbell.com/product/unix-and-shell-programming-anoop-
chaturvedi-bl-rai-6719026

Explore and download more ebooks at ebookbell.com


Here are some recommended products that we believe you will be
interested in. You can click the link to download.

Unix And Shell Programming 1st Edition Harwani B M

https://ebookbell.com/product/unix-and-shell-programming-1st-edition-
harwani-b-m-5673262

Introduction To Unix And Shell Programming 1st Edition M G


Venkateshmurthy

https://ebookbell.com/product/introduction-to-unix-and-shell-
programming-1st-edition-m-g-venkateshmurthy-32722142

Shell Programming In Unix Linux And Os X 4th Edition Stephen G Kochan

https://ebookbell.com/product/shell-programming-in-unix-linux-and-
os-x-4th-edition-stephen-g-kochan-5731674

Shell Programming In Unix Linux And Os X 4th Edition Patrick Wood

https://ebookbell.com/product/shell-programming-in-unix-linux-and-
os-x-4th-edition-patrick-wood-5903540
Unix Programming Unix Processes Memory Management Process
Communication Networking And Shell Scripting Dr Vineeta Khemchandani

https://ebookbell.com/product/unix-programming-unix-processes-memory-
management-process-communication-networking-and-shell-scripting-dr-
vineeta-khemchandani-43688982

Mastering Unix Shell Scripting Bash Bourne And Korn Shell Scripting
For Programmers System Administrators And Unix Gurus Second Edition
2nd Edition Randal K Michael

https://ebookbell.com/product/mastering-unix-shell-scripting-bash-
bourne-and-korn-shell-scripting-for-programmers-system-administrators-
and-unix-gurus-second-edition-2nd-edition-randal-k-michael-2245602

Learning Unix For Os X Going Deep With The Terminal And Shell 2nd
Edition Dave Taylor

https://ebookbell.com/product/learning-unix-for-os-x-going-deep-with-
the-terminal-and-shell-2nd-edition-dave-taylor-5312240

Command Line Fundamentals Learn To Use The Unix Commandline Tools And
Bash Shell Scripting Vivek N

https://ebookbell.com/product/command-line-fundamentals-learn-to-use-
the-unix-commandline-tools-and-bash-shell-scripting-vivek-n-49184084

Wicked Cool Shell Scripts 2nd Edition 101 Scripts For Linux Os X And
Unix Systems 2nd Edition Taylor

https://ebookbell.com/product/wicked-cool-shell-scripts-2nd-
edition-101-scripts-for-linux-os-x-and-unix-systems-2nd-edition-
taylor-54882772
UNIX AND SHELL
PROGRAMMING

By

ANOOP CHATURVEDI B.L. RAI


M C A , M .T ech (C S E ) (H on s) M C A , M .T ech (C S E )
A ssociate P rofessor H ead of T h e D epartm en t
D epartm en t of C om pu ter S cien ce, D epartm en t of C om pu ter S cien ce,
L .N .C .T ., B h opal J .N .C .T ., B h opal

UNIVERSITY SCIENCE PRESS


(An Imprint of Laxmi Publications Pvt. Ltd.)
P u blish ed by :
UNIVERSITY SCIENCE PRESS
(A n Im prin t of L axm i P u blication s P vt. L td .)
113, G olden H ou se, D aryagan j,
N ew D elh i-110002
P h on e : 011-43 53 25 00
F ax : 011-43 53 25 28
w w w .laxm ipu blication s.com
in fo@ laxm ipu blication s.com

C opyrigh t © 2011 by L axm i P u blication s P vt. L td .

F irst E d ition : 2011


CONTENTS
Preface (xi)

Acknowledgement (xii)

1. INTRODUCTION TO UNIX 1-·6


1.1 Development of Unix 1
1.2 Types of Shell 2
1.3 Features of UNIX 3
1.4 Hierarchical Structure of UNIX O.S. Or
Tree Structure of UNIX O.S . 5

2. OPERATING SYSTEM SERVICES 7-11


2.1 Assumption about H/W-Level of UNIX system 7
2.2 Processor Execution Level 9
2.3 Architecture of UNIX O.S. 9

3. FILE SYSTEM 12-22


3.1 File System Layout 12
3.2 Block Addressing Scheme 13
3.3 Process 15
3.4 P rocess State and Transitions 18
3.5 Sleep and Wakeup 20
3.6 Kernel Data Structure 21
3.7 System Administration 21

4. BUFFER CACHE 23-30


4.1 Buffer H eaders 23
4.2 Scenarios for Retrieval of a Buffer 25
5. READING AND WRITING DISK BLOCKS 31-41
5.1 Disk Controller 31
5.2 Algorithm: For Reading a Disk Block 32
5.3 Block Read Ahead 32
5.4 Advantage of Disk Block 34
5.5 Accessing Inodes 35
5.6 Algo: Releasing Inode (In-core) 36
5. 7 Structure of a Regular File 37
5.8 Directories 40
5.9 Conversion of a Pathname to an Inode Number 40

6. INODE ASSIGNMENT TO A NEW FILE 42-48


6.1 Remembered Inode 43
6.2 Allocation of Disk Block 46
6.3 Different Treatment of Disk Block and Inode 48

7. SYSTEM CALLS 49-69


7.1 Types of System Calls 49
7.2 Algorithm: Read 51
7.3 Adj usting the Position of File 110-LSeek 54
7.4 Close 55
7.5 File Creation 56
7.6 Creation of Special Files 56
7.7 Stat and Fstat 57
7.8 Pipes 58
7.9 Four Cases for Reading and Writing Pipes 59
7.10 Dup 60
7.11 Mounting and Unmounting File Systems 61
7.12 Mount (Special P athname, Directory Pathname, Options) 61
7.13 Mount File 61
7.14 Algorithm for Mounting a File System 62
7.15 Crossing Mount Points in File PathNames 63
7.16 Revised Algorithm for Accessing an Inode 63
7.17 Unmounting a File System --+Syntax 65
7.18 Link 66
7.19 Unlink 68
8. STRUCTURE OF A PROCESS 70-82
8.1 Process States and Transitions 70
8.2 Kernel Data Structures 71
8.3 Layout of System Memory 72
8.4 The Context of a Process 76
8.5 Typical Context Layers of a Sleeping Process 78
8.6 Manipulation of the Process Address Space 79

9. PROCESS CONTROL 83-89


9.1 Process Creation 83
9.2 Awaiting Process Termination 85
9.3 The User-ID of a Process 86
9.4 Example Execution of Setuid Program 86
9.5 Changing the Size of a Process 87

10. INTER-PROCESS COMMUNICATION 90-96


10.1 Process Tracing 90
10.2 System V IPC 91

11. SOCKETS 97-102


11.1 Multiprocessor Systems 99
11.2 Problem with Multiprocessor System 100
11.3 Solution with Master Slave Processors 100
11.4 Solution with Semaphores 101

12. UNIX COMMAND 103-127


12.1 Introduction to Shell 103
12.2 Shell Programming 117
12.3 Sleep and Wait 120

13. AWK AND PERL PROGRAMMING 128-182


13.1 Introduction to awk 128
13.2 How to Run awk Programs? 129
13.3 Comments in awk Programs 129
13.4 The Printf Statement 129
13.5 Conditional Statements 130
13.6 Loops in awk 131
13.7 Startup and Cleanup Actions (BEGIN & END) 132
13.8 Buiilt-in Variables 134
13.9 Intr oduction to Getline 137
13.10 Built-in Functions 140
13.11 Intr oduction to P erl 148
13.12 Starting a Perl Script 149
13.13 PERL-Arithmetic Operators 152
13.14 PERL-Assignment Operators 153
13.15 PERL- Logical and Relational Operators 154
13.16 Perl-$_ and @_ 156
13.17 Arr ays-@ 157
13.18 @ARGVand %ENV 160
13.19 If/While Syntax 160
13.20 File Input 163
13.21 String Processing with Regular Expressions 165
13.22 Subroutines 169
13.23 Intr oduction to Sed 171
13.24 Brief History of Linux 177

Exercises 183 - 188


Index 189-191
P R E FA C E

T h e U N IX system w as first described in a 1974 paper in th e C om m u n ication of th e A C M


by K en T h om pson an d D en n is R itch ie. S in ce th at tim e, it h as becom e in creasin gly w idespread
an d popu lar th rou gh ou t th e com pu ter in du stry w h ere m ore an d m ore ven dors are offerin g
su pport for it on th eir m ach in es. It is especially popu lar in u n iversities w h ere its frequ en tly
u sed for operatin g system s research an d case stu dies.
T h is book describes th e in tern al algorith m an d stru ctu res th at form th e basis of th e
operatin g system an d th eir relation sh ip to th e program m er in terface. T h is book also cover
th e topic S h ell P rogram m in g, A W K , S E D an d P E R L . It is th u s applicable to several
en viron m en ts.
F irst it can be u sed as a text book for an operatin g system cou rse. S econ d, system
program m ers can u se th e book as a referen ce to gain better u n derstan din g of h ow th e
kern el w ork s an d to com pare algorith m s u sed in th e U N IX system to algorith m s u sed in
oth er operatin g system s. F in ally A pplication P rogram m er can u se th e book to im plem en t
S h ell S crip t, P rogram m in g w ith a w k , P rogram m in g w ith p erl an d P rogram m in g w ith
sed .
M an y exercise origin ally prepared for th e cou rse h ave been in clu ded at th e en d of th e
book , an d th ey are a key part of th e book. S om e exercises are straigh tforw ard, design ed to
illu strate con cepts brou gh t ou t in th e text.
T h e book n ot on ly covers th e en tire scope of th e su bject bu t explain th e ph ilosoph y of
th e su bject. T h is m ak es th e u n derstan din g of th is su bject m ore clear an d m akes it m ore
in terestin g. T h e book w ill be very u sefu l n ot on ly to th e stu den ts bu t also to th e su bject
teach ers. T h e stu den ts h ave to om it n oth in g an d possibly h ave to cover n oth in g m ore.

— A u th o rs
Chapter 1
INTRODUCTION TO UNIX
1.1 DEVELOPMENT OF UNIX
UNICS (Uniplexed Information and Computing System) 1970. And then UNIX—1973 in ‘C’.

1.1.1 “Bill Joy” (AT&T Bell Laboratory) is a Student Who Wrote Vi Editor
Microsoft was the first to run UNIX on a PC with 640 KB of memory. They called their
product XENIX that was bared on earlier edition of AT&T. But with some BSD borrowed utilities.
XENIX was later sold off to SCO (The Santa, cruz operation) who today markets the most popular
commercial brand of UNIX for the desktop—SCO UNIX. It now offers two major flavors—SCO
open server release 5 and SCO UNIX ware 7: the later is SVR 4—compliant,

1.1.2 Structure of UNIX System


User

Shell

Uni
x
Com
er man
Oth lication ds
App tem SW User
User Sys Kernel Shell
Shell
s

H/W
er
pil

Da
m

Pa ta ba
Co

cka se
ge

Internet
Tools
Shell
Shell
Us
Us er
er

Fig. 1.1
2 U NIX AND S HELL P ROGRAMMING

Kernel → This is the name of UNIX Operating System.


Shell → This is the command interpreter used in unix.
Application programs and utilities —Utilities are UNIX commands. Application programs
such as word processor, spreadsheets and Database Management Systems may be installed along
side the linux (or UNIX) commands. A user may run a utility or Application Programs through shell.

User
(i) Ordinary user → Work only their own working directory.
(ii) Super user → Super user have the command on entire system. They can add user.
Remove user etc.

1.2 TYPES OF SHELL


(i) Bourne Shell—It was created by Steve Bourne probably that’s why its bounded with
every UNIX system. Because it was bounded with every system it became popular.
Whatever the cause and the effect, the fact remains that this is the shell used by many
UNIX users.
(ii) C Shell—It was created by “Bill Joy” then pursuing his graduation at the University
of California at Berkeley. This shell is a hit with those who are seriously into UNIX
programming. It has two advantage over Bourne Shell.
(a) It allows aliaring of commands.
(b) C Shell has a command history feature.
(iii) Korn Shell—It was designed by “David Korn” of AT&T Bell Labs. The not so widely
used Korn shell is very powerful and is a superset of Bourne shell. It offers a lot more
capabilities and is decidedly more efficient than the other.
(iv) Available to Linux r-eh (Restricted Shell)—This restricts the area of memory the user
may access to his or her own directory, thus limiting access to all other users files. Its
not available on many machines.
There are other shells that have been developed since most generally for Linux—ash, tcsh,
and zsh.
However the most widely used, Linux based shell is the Bourne again shell (bash) based on
the original Bourne shell, it has similar extensions as the Korn shell, plus its own further
extension.
Linux also offers a windows based shell interfaces commonly known as X-windows or
simply as X.
Kernel is represented by the file Island/Unix or/Unix in SCO Unix, /vm linuz (Linux) and
the shell by/bin/sh (/bin/bash in linux).
Note: The command prompt is a $ if you are operating in “Bourne Shell” or a % if in “C Shell”.

1.2.1 The Reasons for Popularity and Success of the UNIX System
(i) The system is written in high level language, making it easy to read, understand
change and move to other machines.
I NTRODUCTION TO U NIX 3

(ii) It has a simple user interface that has the power to provide the services that users want.
(iii) It provides primitives that permits complex programs to be built from simpler
programs.
(iv) It user a hierarchical file system that allows easy maintenance and efficient
implementation.
(v) It uses consistent format for files, the byte stream, making application programs easier
to write.
(vi) It provides a simple, consistent interface to peripheral devices.
(vii) Its a multiuser, multiprocess system. Each user can execute several process
simultaneously.
(viii) It hides the m/c architecture from the user, making it easier to write programs that run
on different h/w implementations.

1.3 FEATURES OF UNIX


There are ten features of UNIX:
1. Multiuser system 6. Pattern matching
2. Multitasking capabilities 7. Programming facility
3. Communication 8. Windowing system
4. Security 9. Documentation
5. Portability 10. System calls and libraries.

1. Multiuser System
In a multiuser system, the same computer resources–hard disk, memory etc., are accessible
to many users. The users don’t flock together at the same computer but are given different terminal
to operate from. All terminals are connected to the main computer whose resources are available
by all users. The following figure shows a typical UNIX setup.

Terminal Terminal

Host M/c

Terminal Terminal
Fig. 1.2
4 U NIX AND S HELL P ROGRAMMING

Host M/C also known as server or a console. The number of terminal connected to the Host
M/C depends on the number of ports that are present in its controller card. There are several type
of terminal that can be attached to host M/C.
(i) Dumb Terminal—These terminal consist of a keyboard and a display unit with no
memory or disk of its own. These can never act as independent machine.
(ii) Terminal Emulation—A PC has its own microprocessor, memory and disk driver. By
attaching this to host M/C through a cable and running a S/W from this PC. We can
emulate it to work as if it is a dumb terminal. At such times the memory and disk are
not in use and the PC can’t carry out any processing its own. The S/W that makes the
PC work like a dumb terminal is called terminal emulation S/W. VTERM and XTALK
are two such popular S/W.
(iii) Dial-In-Terminal—These terminal used telephones lines to connect with host M/C. To
communicate over telephone lines we attach a modem.

Modem

Host M/c Modem


Terminal

Fig. 1.3

2. Multitasking Capabilities
Its capable of carrying out that a single user can run more than one job at the same time.
In UNIX this is done by running one job normally and other job in background. This is managed
by dividing the CPU time b/w all processes.
“The multitasking provide by MS-DOS is known as serial multitasking”.

3. Communication
The communication may be within the n/w of a single main computer or between two or
more such computer n/w. The users can easily exchange mail, data, programs through such
n/w. Distance poses no barrier to passing information or message to and from.

4. Security
UNIX has three inherent provision for protecting data.
(i) By assigning passwords and login names to individual users ensuring that not any-
body can come and have access to your work.
(ii) At the file level there are read, write, and execute permissions to each file decide who
can access a particular file.
(iii) File encryption.
I NTRODUCTION TO U NIX 5

5. Portability
It can be ported to almost any computer system with only the bare minimum of adaptations
to suit the given computer architecture.

1.4 HIERARCHICAL STRUCTURE OF UNIX O.S.


OR
TREE STRUCTURE OF UNIX O.S.
(i) / - This is the rout directory of file system. The main memory of entire file system and
HOME directory for super user.
(ii) /sbin - This contains programs used in boating the system and in recovery.
(iii) /bin - This is used to hold useful utilities programs.
(iv) /dev - This contains special device files that includes terminals, printers and storage
device. There files contains device number that identify device to the O.S.
(v) /etc - This contains system administrators and configuration database.
(vi) /HOME - This contains home directory and files of all users, if your logname is
“Anoop” your default HOME directory is/home/Anoop.
(vii) /tmp - This contains all temporary files used by UNIX system.
(viii) /var - This contains the directory of all files that vary among system. Files in this
directory includes.
/var/adm — Contains system logging and accounting files.
/var/mail — Contains user mail files.
/var/news — Contains message of common interest.
/var/temp — Is a directory for temporary files.
/var/UUCP — Contains log and status files for UUCP system.
(ix) /mnt - Contains entries for removable (mountable) media such as CD-ROM, DLT taps.
(x) /proc - Contains process used in system.
(xi) /usr - This contains other accessible directory such as /usr/bin/usr/lib.
/usr/bin — Contains many executable program and unix system utilities.
/usr/sbin — Contain executable program for S.A.
/usr/games — Contains Binaries for games programmes and data for games.
/usr/lib — Libraries for programs and programming language.
6 U NIX AND S HELL P ROGRAMMING

bin der etc home mnt stand dmp user

date eat who ask rdsk passud Anoap Unix bin kumar sharma

loginsal prags safe

Fig. 1.4
In UNIX everything is treated as file. Its still necessary to divide there files into three
categories:
(i) Ordinary files—Contains only data. This includes all data, source programs, object
and executable code all UNIX commands as well as any files created by the user. The
most common type or ordinary file is the text file.
(ii) Directory files—A directory contains no external data but keeps some details of the
files and sub-directories that it contains. A directory file contains two field for each file.
The name of the file and its identification number.
(iii) Device files—Consider physical device as files. This definition includes printers, tapes,
floppy driver, CD-ROMs, hard disk and terminal.

( a)) Full Path Name


List each directory, starting from/, down to the file itself. Each directory and the file name
must be separated by a /.

( b)) Partial Path Name


If the file is in or in a sub, directory below the working directory, the names of higher
directories may be omitted.

( c ) Relative Path Name


If the file is in a directory near the working directory, a relative path may be used.
If the working directory is /home/Ion, the file al.c in that directory may be reffered by:
Full Path Name — /home/Ion/al.c
Partial Path Name — al.c
If the working directory is /home/Ion, the file temp under directory /home/nic may be
reffered by:
Full Path Name : /home/nic/temp
Relative Path Name : ../nic/temp
Chapter 2
OPERATING SYSTEM SERVICES
The Kernel performs various primitive operations on behalf of user process to support the
user interface. Among the services provided by the Kernel are:
(i) Controlling the execution of process by allowing their creation, termination or suspen-
sion and communication.
(ii) Scheduling process fairly for execution on the CPU. Processes share the CPU in a time
shared manner. The CPU executes a process, the Kernel suspend it when its time
quantum elapses and the Kernel schedules another process to execute. The Kernel later
reschedules the suspended process.
(iii) Allocating main memory for an executing process.
(iv) Allocating secondary memory for efficient storage and retrieval of user data. This
service constitutes the file system.
(v) Allowing processes controlled access to peripheral devices such as terminals, tape
driver, disk driver and N/W devices.

2.1 ASSUMPTION ABOUT H/W—LEVEL OF UNIX SYSTEM


The execution of user processes on UNIX systems is divided into two levels:
(i) User and (ii) Kernel level
When a process executes a system call the execution mode of the process changes from user
mode to Kernel mode. The O.S. executer and attempts to service. The user request, returning an
error code if it fails. Difference b/w, there modes are:
Kernel Mode K K
User Mode U U

2.1.1 Differences
(i) Process in user mode can access their own instructions and data but not Kernel
instructions and data. Process in Kernel mode however can access Kernel and user
addresses. For example, the virtual address space of a process may be divided b/w
8 UNIX AND S HELL P ROGRAMMING

addresses that are accessible only in Kernel mode and addresses that are accessible in
either mode.
(ii) Some m/c instructions are privileged and result in an error when executed in user
mode. For example a m/c may contain an instruction that manipulates the processor
status register. Process executed in user mode should not have this capabilities.
Although the system executes in one of two modes, the Kernel runs on behalf of a user
process. The Kernel is not a seperate set of processes that run in parallel to user-process but its
part of each user process.

2.1.2 Interrupts and Exceptions


The UNIX system allows devices such as I/O peripherals or the system clock to interrupt
the CPU asynchronously. On, receipt of interrupt, the Kernel saver its current context determines
the cause of the interrupt and services the interrupt. After the Kernel services the interrupt it
restore its interrupted context and proceeds as if nothing had happened. The h/w usually
prioritizes devices according to the order that interrupts should be handled. When the Kernel
services an interrupt, it blocks out lower priority interrupts but services higher priority interrupt.
Disk Drive

3 Interrupt Disk
CPU
controller Controller
4 2
1

Fig. 2.1
Steps in starting an I/O devices and getting interrupt.
In step 1. The driver tells the controller what to do by writing into its device Register. The
controller then starts the device. When the controller has finished reading or writing the number
of bytes it has been told to transfer, it signals the interrupt controller chip using certain bus lines
in step 2.
If the interrupt controller is prepare to accept the interrupt it assert a pin on CPU chip
informing it, in step 3.
In step 4. The interrupt controller puts the number of the device on the bus so the CPU can
read it and know which device has just finished.

Current Instruction
Interrupt processing involves taking
Next Instruction the interrupt, running, the interrupt
3 Return handler, and returning to the user
1 Interrupt program.
2 Dispatch
to handler
O PERATING S YSTEM S ERVICES 9

Exception
An exception condition refers to unexpected events caused by a process such as addressing
illegal memory, executing privileged instructions, dividing by zero and soon. OR “Exception are
run time error”.

Difference
Exception Interrupt

1. Internal to process 1. Externel to process


2. Occur within a program 2. Occur between two programs
3. System attempt to restart the instruction 3. The system continues with the next
after handling the exceptions. instruction after servicing the interrupt.

2.2 PROCESSOR EXECUTION LEVEL


The Kernel must sometimes prevent the occurence of interrupts during critical activity, which
could result in corrupt data if interrupts were allowed. For instance the Kernel may not want to
receive a disk interrupt while manipulating linked lists because handling the interrupt could
corrupt the pointers. Setting the processor execution level to certain values masks off interrupts
from that level and lower levels, allowing only higher level interrupts.

M/C Errors

Clock
Higher Priority
Disk

N/W Devices

Terminals Lower Priority

S/W Interrupts

Interrupt Level

Fig. 2.2

Memory Management
The Kernel permanently resides in main memory as does the currently executing process.

2.3 ARCHITECTURE OF UNIX O.S.

2.3.1 System Calls and Libraries


System calls and libraries represent the border between user program and the Kernel.
“Instruct the Kernel to do some specific task”.
System calls look like ordinary function calls in C programs and libraries map these function
calls to the primitives needed to enter the O.S. Assembly language programs may invoke system
called directly without a system call library. The libraries are linked with the programs at compile
time and are thus part of the user program for purpose of this discussion.
10 UNIX AND S HELL P ROGRAMMING

User Programs

Trap Libraries
User Level

Kernel Level

System call Interface

Inter-process
Process
Communication
Control
File Subsystem
Schedular
Subsystem
Memory
Management
Buffer Cache

Character Block
Device Drivers

Hardware Control
Kernel Level
H/W Level
Hardware

Fig. 2.3 Block diagram of system kernel

Trap
A trap (or exception) is a S.W. generated interrupt caused either by an error (for example,
division by zero or invalid memory access) or by a specific request from a user program that an
0.5 service be performed.

File Subsystem
The file subsystem manages files, allocating file space administering free space controlling
access to files and retrieving data for users. Process interact with the file subsystem via a specific
set of system calls such as open, read, write, shown, stat, chmod etc.

2.3.2 Buffer
The file subsystem accesses file data using a buffering mechanism that regulates data flow
b/w the Kernel and secondary storage devices. The buffering mechanism interacts with block
I/O device drivers to initiate data transfer to and from and Kernel Block I/O device are random
access storage device to the rest of the system. It also interacts directly with raw I/O devices
(character device that are not block device) without the intervention of buffering mechanism.
O PERATING S YSTEM S ERVICES 11

2.3.3 Device Drivers


Device drivers are the Kernel modules that control the operation of peripheral devices Block
I/O device drivers make them appear to be random access storage device to the rest of system.
A tape driver may allow the Kernel to treat a tape unit as a random access storage device.

2.3.4 Process Control Subsystem


The file subsystem and process control subsystem interact when loading a file into memory
for execution. Its responsible for:
(i) Memory Management—This module control the allocation of memory. If at any time
the system does not have enough physical memory for all process, the Kernel moves
them b/w main memory and secondary memory so that all process get a fair choice
to execute two policies for managing memory swapping and demand paging.
(ii) Schedular—This modules allocates the CPU to processes. It schedules them to run in
turn until they voluntarily relinquish the CPU while awaiting are source or until the
Kernel prompts them when their recent run time exceeds a time quantum.
(iii) Interprocess Communication—This mechanism allow arbitrary-processes to exchange
of data and synchronize execution. There are several form of TPC, pipes, signals,
messages semaphore.

2.3.5 H/W Control


This is responsible for handling interrupts and for communicating with m/c. Devices such
as disks or terminals may interrupt the CPU while a process is executing.
12 U NIX AND S HELL P ROGRAMMING

Chapter 3
FILE SYSTEM
After the disk has been partitioned its still not ready for use. A file system has to be created
in each partition. There usually are multiple file systems in one m/c each one having its own
directory tree headed by root.
Every file system is organized in a sequence of blocks of 512 bytes each. (1024 in Linux) and
will have there four components:

Boot Block Super Block Inode Blocks Data Block

3.1 FILE SYSTEM LAYOUT


1. Boot Block—This block contains a small boot strap program. This is the Master Boot
Record (MBR) that DOS users would like to call it. This is loaded into memory when
the system is booted. It may in turn load another program from the disk but eventually
it will load the Kernel (the file/stand/unix or/vm linuz) into memory.
2. Super Block—It describe the state of file system (balance sheet of every UNIX file
system). The Kernel first reads this area before allocating disk blocks and inodes for
new files. The super block contains global file information about disk usage and
availability of data blocks and inodes. It contains:
—The size of the file system.
—The length of a disk block.
—Last time of updation.
—The number of free data blocks available.
—A partial list of immediately allocable free data blocks.
—Number of free inodes available.
—A partial list of immediately usable inodes.
When a file is created it looks up the list available in the superblock. The Kernel reads
and writes the copy of the super block in memory when controlling allocation of inode
and data blocks.
F ILE S YSTEM 13

3. Inodes—Since the block of a file are scattered throughout the disk, its obvious that
the addresses of all its blocks have to be stored and not just the starting and ending
ones. These address are available in the term of link list in the inode a table main-
tained individually for each file. All inode are stored in inode blocks distinctly
separate from the data block and are arranged contiguously in a user in accessible
area of file system.

3.1.1 Contents of an Inode


Every file or directory has an inode, which contains all that you could possibly need to
know about a file except its name and contents. Each inode contain following attributes of a
file:
—File type (regular, directory etc)
—Number of links (the number of alias the file has)
—Owner (The user-id number of the owner)
—Group (The group-id number)
—File Mode (The traid of the three permission)
—Number of bytes in the file
—Date and time of last modification
—Date and time of last access
—Date and time of last change of inode
—An array of 13 pointers to the file.
UNIX system also maintain a inode-table in memory for a file which is being used by it.
4. Data Blocks—The data block start at the end of the inode list and contain file data and
administrative data. An allocated data can belong to one and only one file in the file
system.

3.1.2 Logical and Physical Blocks


(Hard disk, floppy and tapes handle data in chunka or blocks).
1024 * 10 + (256) * 1024 + (256 * 256) * 1024 + (256 * 256 + 256) * 1024
≈ 17 GB
So the size of a file in UNIX system is approximately equivalent to 17 GB.

3.2 BLOCK ADDRESSING SCHEME


There are 13 entries (or addresses) in the inode table containing the addresses of 13 disk
block.
The first 10 addresses are simple. They contain the disk addresses of the first 10 blocks of
file when files exceeds 10 blocks. We use single indirect (11th block) then double indirect (12th
block) and then tripple indirect (13th block). Thus the maximum size a UNIX file system can
support becomes 17 GB.
Exploring the Variety of Random
Documents with Different Content
APPENDIX II
Bull of Pope John XXII., issued February 18, 1321, as a charter for
the Medical Department of the University of Perugia.[21]
“While with deep feelings of solicitous consideration we mentally
revolve how precious the gift of science is and how desirable and
glorious is its possession, since through it the darkness of ignorance
is put to flight and the clouds of error completely done away with so
that the trained intelligence of students disposes and orders their
acts and modes of life in the light of truth, we are moved by a very
great desire that the study of letters in which the priceless pearl of
knowledge is found should everywhere make praiseworthy progress,
and should especially flourish more abundantly in such places as are
considered to be more suitable and fitting for the multiplication of
the seeds and salutary germs of right teaching. Whereas some time
ago, Pope Clement of pious memory, our predecessor, considering
the purity of faith and the excelling devotion which the city of
Perugia, belonging to our Papal states, is recognized to have
maintained for a long period towards the Church, wishing that these
might increase from good to better in the course of time, deemed it
fitting and equitable that this same city, which had been endowed by
Divine Grace with the prerogatives of many special favours, should
be distinguished by the granting of university powers, in order that
by the goodness of God men might be raised up in the city itself pre-
eminent for their learning, decreed by the Apostolic authority that a
university should be situated in the city and that it should flourish
there for all future time with all those faculties that may be found
more fully set forth in the letter of that same predecessor aforesaid.
And, whereas, we subsequently, though unworthy, having been
raised to the dignity of the Apostolic primacy, are desirous to reward
with a still richer gift the same city of Perugia for the proofs of its
devotion by which it has proven itself worthy of the favour of the
Apostolic See, by our Apostolic authority and in accordance with the
council of our brother bishops, we grant to our venerable brother,
the Bishop of Perugia, and to those who may be his successors in
that diocese, the right of conferring on persons who are worthy of it
the licence to teach (the Doctorate) in canon and civil law, according
to that fixed method which is more fully described and regulated
more at length in this our letter.
“Considering, therefore, that this same city, because of its
convenience and its many favouring conditions, is altogether suitable
for students and wishing on that account to amplify the educational
concessions hitherto made because of the public benefits which we
hope will flow from them, we decree by Apostolic authority that if
there are any who in the course of time shall in that same university
attain the goal of knowledge in medical science and the liberal arts
and should ask for licence to teach in order that they may be able to
train others with more freedom, that they may be examined in that
university in the aforesaid medical sciences and in the arts and be
decorated with the title of Master in these same faculties. We further
decree that as often as any are to receive the decree of Doctor in
medicine and arts, as aforesaid, they must be presented to the
Bishop of Perugia, who rules the diocese at the time, or to him
whom the bishop shall have appointed for this purpose, who having
selected teachers of the same faculty in which the examinations are
to be made, who are at that time present in the university to the
number of at least four, they shall come together without any charge
to the candidate and, every difficulty being removed, should
diligently endeavour that the candidate be examined in science, in
eloquence, in his mode of lecturing, and anything else which is
required for promotion to the degree of doctor or master. With
regard to those who are found worthy, their teachers should be
further consulted privately, and any revelation of information
obtained at such consultations as might redound to the disadvantage
or injury of the consultors is strictly forbidden. If all is satisfactory
the candidates should be approved and admitted and the licence to
teach granted. Those who are found unfit must not be admitted to
the degree of doctor, all leniency or prejudice or favour being set
aside.
“In order that the said university may in the aforesaid studies of
medicine and the arts so much more fully grow in strength,
according as the professors who actually begin the work and
teaching there are more skilful, we have decided that until four or
five years have passed some professors, two at least, who have
secured their degree in the medical sciences at the University of
Paris, under the auspices of the Cathedral of Paris, and who shall
have taught or acted as masters in the before-mentioned University
of Paris, shall be selected for the duties of the masterships and the
professorial chairs in the said department in the University of
Perugia, and that they shall continue their work in this last-
mentioned university until noteworthy progress in the formation of
good students shall have been made.
“With regard to those who are to receive the degree of doctor in
medical science, it must be especially observed that all those seeking
the degree shall have heard lectures in all the books of this same
science which are usually required to be heard by similar students at
the University of Bologna or of Paris, and that this shall continue for
seven years. Those, however, who have elsewhere received
sufficient instruction in logic or philosophy having applied themselves
to these studies for five years in the aforesaid universities, with the
provision, however, that at least three years of the aforesaid five or
seven year term shall have been devoted to hearing lectures in
medical science in some university and according to custom, shall
have been examined under duly authorized teachers and shall have,
besides, read such books outside the regular course as may be
required, may, with due observation of all the regulations which are
demanded for the taking of degrees in Paris or Bologna, also be
allowed to take the examination at Perugia.”
INDEX
Abdallah, 41

Abdominal wounds, 98

Abella, 157

Abulcasis, 35, 78

Abul Farag, 33

Adalbert of Mainz, 63

Adale, 41

Ægidius, 64

Ægina, Paul of, 6, 27, 33, 138, 146, 149, 184, 186

Æginetus. See Ægina, Paul of

Ætius, 4, 28, 138, 146

Aëtius, 27

Albert the Great, 110

Albertus Magnus, 14, 18

Alcohol, 194
Alessandra Giliani, 164

Alexander of Tralles, 4, 27, 29, 146

Alexandria, 33

Ali Abbas, 35

Alphanus, 41

Anæsthesia, 100, 104, 105, 120

Anselm of Havelberg, 63

Anthemios, 5

Antiseptic surgery, 104


wine as, 101

Arabian culture, 8
surgeons, 149

Arabians, 139

Arabs, 46

Archbishop of Lyons, 63

Arculanus, 147, 150

Ardern, John, 85, 123, 127

Aretæus, 186

Argelata, Pietro d’, 125


Aristotle, 18
study of, 16

Armato, Salvino de, 152

Arnold de Villanova, 66
aphorisms of, 67

Arsenic in syphilis, 124

Artificial teeth, 142

Asepsis, 95, 101

Asylums, 191

Aue, Hartmann von der, 64

Aurelius Celsus, 26

Authorities of medieval physicians, 20

Authority, influence of, 12

Autointoxication, 83

Avenzoar, 35, 77

Averroes, 35

Avicenna, 35, 47, 76, 149

Baas, 181

Bachtischua, 7
Bacon, Roger, 14, 110

Bandages, stiffened, 123

Barber surgeons, 115

Bartholomæus Anglicus, 81

Bartholomew on causes of insanity, 192

Basil Valentine, 84

Baths, 32
for melancholia, 184

Bedlam, 188

Bedlamites, 201

Belisarius, Hospital of, 171

Benedictine convents, 159

Bernard de Gordon, 70, 72, 153

Bernard of Morlaix, 49

Bile in eye diseases, 152

Bladders of animals, 78

Bleeding, 55, 84

Blood-letting, 32
Bologna, 40

Bones, number of, 54

Bougies, 123

Branca, 106
Antonio, 107

Bruno da Longoburgo, 96

Brunschwig, Hieronymus, 135

Bubonic plague, 77

Calomel, 85

Care of the insane, 34, 183, 189

Care of the sick, 24, 25

Cassiodorus, 25

Cataract, 151

Cautery, 100, 126

Celsus, Aurelius, 26

Charter of the University of Perugia, 212

Chauliac, Guy de, 11, 66, 71, 72, 105, 109, 118, 123,
139, 140, 153, 167

Christian hospitals, 24
Cleanliness, 95

Clyster apparatus, 127

Cold compresses, 30

Compilation, 3

Constantine, 36, 45

Contrecoup, 92

Convents, Benedictine, 159

Corbeil, Gilles de, 64

Cosmetics, 77

Crusades, 89, 181

Dental instruments, 143

Dentistry, 138

Depressed fractures, 93

De Renzi, 37, 41, 44, 45, 47, 76, 155, 156

Diabolic possession, 195, 196

Diet, 31, 36
for melancholies, 185

Dioscorides, 26
Dioscoros, 5

Diphtheria, 27, 128

Diseases of nervous system, 30


of women, 156

Drainage, 97
tubes, 125

Duke, Robert, 46

Duns Scotus, 110

Dura mater, infection of, 93

Ebers Papyrus, 137

Education, characters of medieval, 12

Elias, 41

Elinus, 41

English, King of the, 40

Epileptic conditions, 30

Exorcism, 195

Eye diseases, bile in, 152


wash, urine of infants as, 152
Fabiola, Hospital of, 171

Fee, law as to, 44

Fever, 32

Filaria medinensis, 77

Fistulæ, 100

Fistulas, 127

Four masters of Salerno, 47, 91

Fracture of the skull, 91


of the thigh, extension in, 123

Fractures of the skull, 94


depressed, 93

Frederick II., 42
law of, 43, 206

Gaddesden, John of, 70, 119

Galen, 18, 19, 26, 47, 72, 116

Gariopontus, 41

Gerssdorff, Hans von, 135

Gilbert, 69

Giovanni of Arcoli, 143


Glaucoma, 152

Gonorrhœa, 123

Gregory, Major, 189


of Tours, 181

Guarna, Rebecca, 157

Guerini, 142, 143

Guido of Montpellier, 64

Gurlt, 9, 47, 69, 90, 93, 95, 96, 99, 106, 110, 113,
121, 146, 156

Guy de Chauliac. See Chauliac

Guy of Montpellier. See Montpellier

Hæmoptysis, 30

Hangman’s rope, 28

Hare-lip, 134

Hartmann von der Aue, 64

Headache, 30

Hemicrania, 30

Herbs, 26

Hernia, 68
operations too frequent, 122
radical cure of, 121
reduction of, 122

Hernias, 99

Herodotus, 137

Hippocrates, 26, 47

Holy Ghost Hospital, 172

Hospital, 64, 65
at Lübeck, 178
for lunatics, 187
of Bedlam, 188
of Belisarius, 171
of Fabiola, 171
of Pope Symmachus, 171
of St. Basil, 170
of St. Jean, 178
of Tonnerre, 176

Hospitals, 169
Christian, 24
for lepers, 181
of the Holy Ghost, 172
royal, 174

Hotel Dieu, 188

“Hudibras,” 107

Hugh of Lucca, 96, 104

Humours, 54
Hymns, Latin, 48

Hysteria, 34

Indian surgeons, 106

Infection of dura mater, 93

Infirmaries in monasteries, 24

Inhalations, steam, 29

Insane, care of the, 34, 183, 189

Insanity, 194
lash for, 198

Intestine, suture of, 134

Intestines, wounds of, 99

Italy the postgraduate medical centre, 118

John of Salisbury, 64
of Gaddesden, 70, 119

King of the English, 49

Laceration of the middle meningeal artery, 92

Lanfranc, 11, 80, 96, 110


Lash for insanity, 198

Latin hymns, 48

Law as to fee, 44
of Frederick II., 43, 206

Lepers, hospitals for, 181

Ligatures, 125

“Lilium Medicinæ,” 73

Linear cicatrices, 101

Lister, Lord, 103

Louis IX., 110

Lübeck, hospital at, 178

Lunatics, hospital for, 187

Lucca, Hugh of, 96, 104

Lyons, Archbishop of, 63

Manzolini, Madame, 165

Mad dog, 68, 80

Magnetism, 15

Maimonides, 35, 79
Medical oath, 44
schools at universities, 74
superstitions, 22

Medici, 164

Medicine and surgery, relations of, 115


popular, 22

Medieval education, characters of, 12


medicine, periods of, 21
textbooks, 88

Melancholics, diet for, 185

Mental defectives, colonies for, 202

Meningeal artery, laceration of, 92

Mercuriade, 157

Mercury, use of, 123

Mesue, 47

Methrodoros, 5

Metrorrhagia, 33

Middle Ages, limits of, vii

Milk, 29, 52
bath, 78

Monasteries, infirmaries in, 24


Mondeville, Henri de, 11, 66, 114, 116

Mondino, 96, 164

Monte Cassino, 39

Montpellier, Guy de, 10, 61, 173

Moorish physicians, 62

Morbus Gallicus, 124

Morley, Henry, 17

Morgagni, 84

Muratori, 76

Nasal cautery, 148


polypi, 147
speculum, 149

Nature study, 13

Needling for cataract, 151

Nefretykes, 85

Nerve suture, 113

Nervous system, 30

Nicaise, 166
Nose, surgery of the, 106

Number of bones, 54
of veins, 54

Nurses, order of, 180

Nutrition per rectum, 77

Oath, medical, 44

Œsophagus tube, 123

Ophthalmology, 151

Opium, 29

Order of nurses, 180

Ordronaux, 47, 50

Oribasius, 28

Orthodontia, 139

Pagel, 56, 127, 194

Pammachius, 171

Paris, 40, 110

Passavant, Jean, 111

Paul of Ægina, 6, 27, 33, 138, 146


Peregrinus, 15

Perineum, rupture of, 157

Perugia, Charter of the University, 212

Pfolspeundt, Heinrich von, 133, 134

Physician, conduct of the, 58

Physicians, Moorish, 62

Pitard, Jean, 114

Plague, bubonic, 77

Plastic surgery, 106, 134

Polypi, nasal, 147

Pontus, 41

Pope Symmachus, Hospital of, 171

Popular medicine, 22

Power, D’Arcy, 127

Psycho-analysis, 196

Pure drug law, 43

Pus, 103

Puschmann, 56
Putrefaction, 97

Rabies, 81, 128

Rectal feeding, 78
surgery, 127

Red light treatment, 70, 82

Regimen, 48, 49
sanitatis, 47

Renal disease, 85

Rhazes, 35, 148

Roger, 42, 56, 70, 90, 103

Roland, 56, 103

Rolando, 91

Roman medicine, origin of, 2

“Rosa Anglica,” 70

Rupture of the perineum, 157

St. Basil, Hospital of, 170

St. Benedict, 24

St. Bernard, 63
of Clairvaux, 161

St. Hildegarde, 160

St. Jean, Hospital of, 178

Saintsbury, Professor, 48

Salerno, 7, 37, 75, 155


curriculum at, 38

Salerno, school of, 57

Salicet, William of, 96, 105

Salisbury, John of, 64

Salvino de Armato, 152

Santa Sophia, architect of, 5

School of Salerno, 57

Scotus, Duns, 40

Sects in surgery, 116

Sick, care of the, 24, 25

Skin of the snake, 28

Skull, fractures of, 91, 94


opening the, 92

Smallpox, 35, 70
Snake, skin of, 28

Sore throat, 31

Spectacles, 73, 152

Steam inhalations, 29

Stiffened bandages, 123

Students, 65

Superstitions, medical, 22

Surgeon, training of, 117

Surgeons, Arabian, 140


barber, 11
Indian, 106
temperance in, 97

Surgery, antiseptic, 104


of the nose, 106
plastic, 106, 134
rectal, 127
sects in, 116

Surgical specialities, 136

Syphilis, 123
arsenic treatment of, 124

Tagliacozzi, 107

Taranta, Valesco de, 71


Tartar, removal of, 141

Teeth, artificial, 142


cleaning of, 140
filling of, 145
preservation of, 139, 144
straightening of, 139

Temperaments, 54

Temperance in surgeons, 97

Testicle excision in hernia operations, 121

Tetanus, 130

Textbooks, medieval, 88

Theodoric, 70, 96, 102, 113

Therapeutics, 23

Thigh, fracture of, 123

Thomas Aquinas, 110

Thyroid gland, 28

Tonnerre, Hospital of, 176

Tooth-powder, 140

Tracheotomy, 147, 150

Trallianus, 4
Trephining, 93, 94

Trichiasis, 153

Trotula, 155

Truss, 73, 122

Union by first intention, 100

Universities, medical schools at, 74

Urine of infants as eye-wash, 152

Use of mercury, 123

Uvula, affections of the, 150

Valentine, Basil, 84

Valesco de Taranta, 71

Veins, number of, 54

Vicious sexual habits, 28

Vigo, John de, 145

Viollet le Duc, 176

Virchow, 171, 174, 181


William of Salicet, 96, 105

Wine as antiseptic, 101

Women, diseases of, 156


in medicine, 10
physicians, 166
professors, 155
students, 155

Wood dogge, 129

Wood-hound, 193

Wounds, abdominal, 98
dry treatment of, 125
of intestines, 99
treatment of, 98

Yperman, 123, 131

PRINTED IN GREAT BRITAIN BY BILLING AND SONS, LTD.,


GUILDFORD
IN THE SAME SERIES

PASTEUR & AFTER PASTEUR


By STEPHEN PAGET, F.R.C.S.
HON. SECRETARY DEFENCE SOCIETY

Large Crown 8vo, cloth, with 8 fall-page illustrations

(By post 5/5) PRICE 5/- NET (By post 5/5)


“We heartily congratulate Mr. Paget on his book, which is
deeply interesting and holds the attention from start to
finish.”—Nature.
“There could be no better way of arousing an intelligent
interest in the aims and methods of scientific medicine
than the study of this book. We commend it to all
intending to enter the profession as an excellent
intellectual preparation for the work they will have to
do.”—British Medical Journal.

THE EDINBURGH SCHOOL OF SURGERY BEFORE


LISTER
By ALEXANDER MILES, M.D., F.R.C.S.
SURGEON TO THE ROYAL INFIRMARY, EDINBURGH

Crown 8vo, cloth, with 8 pages of illustrations

(By post 5/5) PRICE 5/- NET (By post 5/5)


“A most fascinating volume which should appeal to
students of surgery who desire to know more of the
history of their art.... We feel sure the book will score an
instantaneous and well-merited success.”—Medical Times.
“Mr. Miles’s account is admirably written, so much so that
we felt sorry when we reached the last page, on which
appears the word ‘brilliant.’ It is this same word ‘brilliant’
which might be applied to the authorship of this most
interesting volume.”—Medical World.
“... a well-written and worthy contribution to the history of
surgery.”—The Hospital.
“This unpretentious and extremely interesting little book
... a valuable record of the great school which it
commemorates.”—Lancet.

OTHER MEDICAL BOOKS

The Edinburgh Medical Series


TEXT-BOOKS FOR STUDENTS AND PRACTITIONERS
DISEASES AND INJURIES OF THE EYE. By William George Sym, M.D.,
F.R.C.S.E. Crown 8vo, cloth, containing 25 full-page Illustrations,
16 of them in colour, and 88 figures in the text; also a Type Test
Card at end of volume.
Price 12/6 net. (By post 13/-.)
A TEXT-BOOK OF MIDWIFERY. By R. W. Johnstone, M.A., M.D.,
F.R.C.S.E., M.R.C.P.E. Second Edition. Crown 8vo, cloth,
containing 264 Illustrations.
Price 12/6 net. (By post 13/-.)
RADIOGRAPHY AND RADIO-THERAPEUTICS. By Robert Knox, M.D.
(Edin.), C.M. (Edin.), M.R.C.S. (Eng.), L.R.C.P. (Lond.). Third
Edition. Containing 90 full-page plates and over 400 Illustrations
in the text. Super royal 8vo, cloth, in two volumes. Vol. I.,
Radiography. Price 35/- net. (By post 35/9.) Vol. II., Radio-
Therapeutics.
Price 18/- net. (By post 18/6.)
X-RAYS IN GENERAL PRACTICE. A Handbook for the General
Practitioner and Student. By Alice Vance Knox, M.B., B.Ch. With
chapters on instrumentation by Robert Knox, M.D., C.M.,
M.R.C.S., L.R.C.P. Crown 8vo, cloth, with many Illustrations. In
the Press.
THE STRUCTURE OF THE FOWL. By O. Charnock Bradley, M.D., D.Sc,
M.R.C.V.S. Crown 8vo, cloth, with 73 Illustrations.
Price 6/- net. (By post 6/6.)
TUBERCULOSIS OF BONES AND JOINTS IN CHILDREN. By John
Fraser, M.D., F.R.C.S. (Edin.), Ch.M. Containing 51 full-page
plates, two of them in colour, and 164 Illustrations in the text.
Super royal 8vo, cloth.
Price 20/- net. (By post 20/9.)
CEREBRO-SPINAL FEVER. The Etiology, Symptomatology, Diagnosis,
and Treatment of Epidemic Cerebro-Spinal Meningitis. By Cecil
Worster-Drought, M.A., M.B., Captain (Temp.) R.A.M.C., and
Alex. Mills Kennedy, M.D., late Captain R.A.M.C. Demy 8vo, cloth,
with 8 full-page plates and 56 line Illustrations and Charts in the
text. Price 30/- net. (By post 30/9.)
MEDICAL APPLIED ANATOMY. By T. B. Johnston, M.B. Crown 8vo,
cloth, containing 3 full-page plates in colour, and 146
Illustrations in the text.
Price 12/6 net. (By post 13/-.)
DISEASES OF CHILDREN. By A. Dingwall-Fordyce, M.D., F.R.C.P.E.
Containing 32 full-page plates, 8 of them in colour, and 84
Illustrations in the text. Crown 8vo, cloth.
Price 12/6 net. (By post 13/-.)
PRACTICAL PATHOLOGY, MORBID ANATOMY, AND POST-MORTEM
TECHNIQUE. By James Miller, M.D., F.R.C.P.E. Containing 111
Illustrations, and a Frontispiece in colour. Crown 8vo, cloth.
Price 12/6 net. (By post 13/-.)

Other Medical Books


A MANUAL OF MEDICAL JURISPRUDENCE, TOXICOLOGY, & PUBLIC
HEALTH. By W. G. Aitchison Robertson, M.D., D.Sc., F.R.C.P.E.,
F.R.S.E. Third Edition. Crown 8vo, cloth, with 48 Illustrations.
Price 12/6 net. (By post 13/-.)
SURGERY AT A CASUALTY CLEARING STATION. By Cuthbert Wallace,
C.M.G., F.R.C.S., Surgeon of St. Thomas’s Hospital; Consulting
Surgeon, British Armies in France; and John Fraser, M.C. Ch.M.,
M.D., F.R.C.S. (Edin.), Assistant Surgeon, Sick Children’s
Hospital, Edinburgh. Crown 8vo, cloth, with 63 figures in the
text.
Price 10/6 net. (By post 11/-.)
THE POCKET PRESCRIBER. By James Burnett, M.A., M.D., M.R.C.P.E.
Third Edition. Foolscap 16mo. (4⅛ by 2¾ inches), cloth.
Price 1/6 net. (By post 1/8.)
BLACK’S MEDICAL DICTIONARY. Edited by John D. Comrie, M.A.,
B.Sc., M.D., F.R.C.P.E., Editor of the “Edinburgh Medical Series.”
Sixth Edition, completing 40,000. Revised and much enlarged.
Welcome to our website – the perfect destination for book lovers and
knowledge seekers. We believe that every book holds a new world,
offering opportunities for learning, discovery, and personal growth.
That’s why we are dedicated to bringing you a diverse collection of
books, ranging from classic literature and specialized publications to
self-development guides and children's books.

More than just a book-buying platform, we strive to be a bridge


connecting you with timeless cultural and intellectual values. With an
elegant, user-friendly interface and a smart search system, you can
quickly find the books that best suit your interests. Additionally,
our special promotions and home delivery services help you save time
and fully enjoy the joy of reading.

Join us on a journey of knowledge exploration, passion nurturing, and


personal growth every day!

ebookbell.com

You might also like