bca 2

feastcanadianSoftware and s/w Development

Dec 14, 2013 (3 years and 9 months ago)

98 views


OPERATING SYSTEMS

Introduction to various categories of softwares

There are two categories of computer software: system software and application
software.

System software

consists of the programs that control the operations of a
computer and its devices.
Two types of system software are the operating system
and utility programs. An

operating system

(
OS
) coordinates all activities among
hardware devices and contains instructions that allow you to run application
software. A

utility program

performs specific

tasks, usually related to managing a
computer, its devices, or its programs. You interact with software through its user
interface.

Application software

consists of programs that perform specific tasks for users.
Popular application software includes word

processing software, spreadsheet
software, database software, and presentation graphics software. Application
software can be

packaged software

(copyrighted software that meets the needs of
a variety of users),

custom software

(tailor
-
made software develo
ped at a user’s
request),

freeware

(copyrighted software provided at no cost),

public
-
domain
software

(software donated for public use with no copyright restrictions),
or

shareware

(copyrighted software distributed free for a trial period).

Operating
System and its function interaction of operating System with
hardware and user programme

n

operating

system
, abbreviated OS, is a product, software type,


that is
part of a system, equipment or computerized equipment, which deals with
management and coordi
nation of its activities.

Operating

system

functions

To act as interface between hardware and users, an operating system must
be able perform the following functions:

1. Enabling startup application programs. Thus, the operating system must
have:

-

A text
editor

-

A translator

-

An editor of links


2. The allocation of resources needed to execute programs is done by
identifying: the programs that are running, the need for memory, peripheral
devices and data protection requirements.

3. Facilities for data com
pression, sorting, mixing, cataloging and
maintenance of libraries, through utility programs available.

4. Plan implementation works according to certain criteria, for efficient use
of central processing unit.

5. Assisting implementation of programs throug
h computer
-
user
communication system, at both hardware and software level.

Examples

of

operating

systems
:BS2000,BS3000,DOS,PC
-
DOS,MS
-
DOS,LINUX,SOLARIS,MAC OS,UNIX,WINDOWS

Various components of operating system with reference to DOS, BIOS,
BIOS and DOS inte
rrupts

DOS

Disk Operating System

(specifically) and

disk operating system

(generically),
most often reveal themselves in abbreviated as

DOS
, refer to an

operating
system

software used in most computers that provides the abstraction and
management of

secondary storage
devices and the information on them (e.g.,

file
systems

for organizing

files

of all sorts). Such software is referred to as
a

disk

operating system when the storage device
s it manages are made of rotating
platters, such as

floppy disks

or

hard disks
.

In the early days of

microcomputers
,

computer memory

space was often limited, so
the disk operating system was an extension of
the operating system. This
component was only loaded if needed. Otherwise, disk access would be limited to
low
-
level operations such as reading and writing disks at the

sector
-
level.

In some cases, the

disk operating system

component (or even the operating system)
was known as

DOS
.

Sometimes, a

disk operating system

can refer to the entire operating system if it is
loaded off a disk and supports the abstraction and management of disk
devices.
Examples include

DOS/360

and

FreeDOS
. On the

PC compatible

platform, an
entire family of operating systems was called

DOS
.

BIOS,


Basic Input/Output System (BIOS)
, also known as the

system
BIOS

or

ROM

BIOS
(
pron.:

/
ˈ
b

.

s
/
), is a

de facto

standard

defining
a

firmware

interface
[
disambiguation needed
]
.
[1]

The name originated from the Basic Input
Output System used in the

CP/M

operating system (released in 1976). Th
e BIOS
software is built into the

PC
, and is the first software run by a PC when powered
on. The fundamental purposes of the BIOS are to initialize and test the system
hardware components, and to load an operating system or other program from a
mass memory device. The BIOS provides a consistent way for application
programs and operating systems to interact with the keyboard, display, and other
input/output devices. Varia
tions in the system hardware are hidden by the BIOS
from programs that use BIOS services instead of directly accessing the hardware.

The BIOS of the original IBM PC/XT had no interactive user interface. Error
messages were displayed on the screen, or coded

series of sounds were generated
to signal errors. Options on the PC and XT were set by switches and jumpers on
the main board and on peripheral cards. Modern Wintel
-
compatible computers
provide a setup routine, accessed at system power
-
up by a particular
key sequence.
The user can configure hardware options using the keyboard and video display.

BIOS software is stored on a

non
-
volatile

ROM

chip on the

motherboard
. It is
specifically designed to work with each particular model of computer, interfacing
with various devices that m
ake up the complementary chipset of the system. In
modern computer systems, the BIOS contents is stored on an

EEPROM chip

so
that the contents can be rewritten without removing the chip from t
he motherboard.
This allows BIOS software to be easily upgraded to add new features or fix bugs.

MS
-
DOS (PC
-
DOS), which was the dominant PC operating system from 1981
until the late 1990s, relied on BIOS services for disk, keyboard, and text display
functi
ons. MS Windows NT, Linux, and other

protected mode

operating systems in
general do not use it after loading.

BIOS and DOS interrupts

BIOS Interrupts



Interrupt types 0
-

1Fh ar
e BIOS interrupts whose service routines reside in
ROM segment

F000h



Interrupt 0
--

Divide Overflow: generated when a

DIV

or

IDIV

operation
produces an overflow

o

The interrupt 0 routine displays the message "
DIVIDE

OVERFLOW
"
and returns control to DOS



Interrupt 1
--

Single Step: generated when the

TF

is set




Interrupt 2
--

Nonmaskable Interrupt: cannot be masked out by clearing the

IF

o

The IBM PC uses this interrupt to signal memory and I/O parity errors
that indicate bad chips



Interrupt 3
--

Breakpoint:
used by debuggers to set up breakpoints



Interrupt 4
--

Overflow: generated by the instruction

INTO

(interrupt if
overflow) when

OF

is set

o

Programmers may write their own interrupt routine to handle unexpected
overflows



Interrupt 5
--

Print Screen: The BIOS

interrupt 5 routine sends the video screen
information to the printer

o

An INT 5 instruction is generated by the keyboard interrupt routine (INT
9) when the PrtScr key is pressed



Interrupts 6&7 are reserved by Intel



Interrupt 8
--

Timer: A timer circuit gen
erates an interrupt once every 54.92
milliseconds

o

The BIOS interrupt 8 routine services the timer circuit



It users the timer signals to keep track of the time of day



Interrupt 9
--

Keyboard: generated by the keyboard whenever a key is pressed
or released

o

T
he service routine reads a scan code and stores it in the keyboard buffer



Interrupt E
--

Diskette Error: The BIOS interrupt routine Eh handles diskette
errors

DOS Interrupts 20h
-
27h



Interrupt 20h
--

Program Terminate: Terminates program, but it is better t
o use
INT 21h, function 4Ch



Interrupt 21h
--

Function Request: Functions 0h
-
5Fh

o

These functions may be classified as character I/O, file access, memory
management, disk access, networking, etc.



Interrupt 22h
-
26h: These handle critical errors and direct
disk access



Interrupt 27h
--

Terminate and Stay Resident: allows programs to stay in
memory after termination

Single User operating system


A single
-
user operating system is a type of operating system (OS) that is developed
and intended for
use on a computer or similar machine that will only have a single
user at any given time. This is the most common type of OS used on a home

computer, as well as on computers in offices and other work environments. There
are two general types of single
-
user

operating system: single task
and

multitasking

systems. Though a single
-
user operating system can be connected
to other systems through a network, it is still truly only used by a single
person and
is different than a multi
-
user OS.

The operating system installed onto a computer is responsible for handling a
number of different tasks and is typically one of the most important programs used
on a computer. An operating system manages memory
usage and other resources,
as well as hardware connectivity and the proper execution of other applications.
There are several different types of operating systems, but the single
-
user operating
system is typically the most common.

A single
-
user operating s
ystem that is a single task system is developed for use
with a computer or electronic device that will only run one application at a time.
This type of OS is typically used on devices such as wireless phones and two
-
way
messaging devices. A single task, si
ngle
-
user operating system can only run one
program or application at a time, and so is not as useful for a computer or other
device intended to run multiple programs at once.

This is where a multitasking single
-
user operating system is used instead. A
mul
titasking OS can run multiple applications and programs at once. This is often
used on computers where someone may wish to navigate the Internet, run a
graphics editing program, play music through a media playing program, and type
in notes in a simple

word processing

program all simultaneously. A single task OS
could not do this, but the multitasking systems are able to handle all of these
processes.

Even though a single
-
user operating syst
em can connect to other computers and
systems through a network, it is still only being used by a single user. As long as
the computer only has one monitor, keyboard and other input devices, then it is a
single
-
user system. Other computers may be able to a
ccess data on the computer,
but unless the users of those computers can also run applications on the computer
that they see on monitors on their own end, it is still a single
-
user system.

Task loader

In

computing
, a

loader

is the part of an

operating system

that is responsible for loading programs. It is
one of the essential stages in the process of
starting a program, as it places programs into memory and
prepares them for execution. Loading a program involves reading the contents of

executable file
, the file
containing the progr
am text, into memory, and then carrying out other required preparatory tasks to
prepare the executable for running. Once loading is complete, the operating system starts the program by
passing control to the loaded program code.


Memory management


Memory
management

is the function of a computer

operating system

responsible for managing the
computer's

primary memory
.
[1]
:pp
-
105
-
208

The memory management function keeps track of the status of each memory location,
either

al
located

or

free
. It determines how memory is allocated among competing processes, deciding
who gets memory, when they receive it, and how much they are allowed. When memory is allocated it
determines which memory locations will be assigned. It tracks when
memory is freed or

unallocated

and
updates the status.

Device Management


It provides complete information about how to perform such tasks as managing logical
volumes, storage, and resources. System users can learn how to perform such tasks as
running
commands, handling processes, handling files and directories, and basic printing.
Other topics useful to users and system administrators include creating and re
-
sizing paging
space, managing virtual memory, backing up and restoring the system, managing har
dware
and pseudo devices, using the System Resource Controller (SRC), securing files, using
storage media, customizing environment files, and writing shell scripts. This topic is also
available on the documentation CD that is shipped with the operating sys
tem..

Control of various devices

Control of various devices is rather simple which involves intricate details that
effect the entire computing system. It is so important, that to do justice to the
concept, it is necessary to study aspects leading up to the

overall device
management goal: to ensure the devices connected to a computer work in
harmony.

In this paper, we will give the ready the basic theory of device management. In
order to provide concrete examples, we then compare two different software
opera
ting systems to show how each addresses device management in two
different ways.

Explaining the software portion of device management would quite literally
cover merely half the equation. To complete our overview, we will discuss how
hardware is also vital

to successful device management.

Finally, we will introduce an exciting new technology that we feel is the future of
device management. This technology promises to overcome some of the
shortcomings of software and hardware conflicts pertaining to device
m
anagement. But before we get to that, we will provide a quick overview of basic
device management theory.

.
Device drivers interrupts driven and poll driven data transfers


n

interrupt

is a signal to the

processor

emitted by hardware or software indicating
an event that needs immediate attention. An interrupt alerts the processor to a high
-
priority condition req
uiring the interruption of the current code the processor is
executing, the current

thread
. The processor responds by suspending its current
activities, saving its

state
, and executing a small program called an

interrupt
handler

(or inter
rupt service routine, ISR) to deal with the event. This interruption
is temporary, and after the interrupt handler finishes, the processor resumes
execution of the previous thread. There are two types of interrupts:

A

hardware interrupt

is an electronic al
erting signal sent to the processor from an
external device, either a part of the computer itself such as a

disk controller

or an
external

peripheral
. For example, pressing a key on the
keyboard

or moving
the

mouse

triggers hardware interrupts that cause the processor to read the
keystroke or mouse position. Unlike the software type
(below)
, hardware interrupts
are

asynchronous

and can occur in the middle of instruction execution, requiring
additional care in programming. The act of initiating a hardware interrupt is

referred to as an

interrupt request

(IRQ).

A

software interrupt

is caused either by an exceptional condition in the processor
itself, or a special

instruction

in the

instruction set

which causes an interrupt when
it is executed. Th
e former is often called a

trap

or

exception

and is used for errors
or events occurring during program execution that are exceptional enough that they
cannot be handled

within the program itself. For example, if the
processor's

arithmetic logic unit

is commanded to divide a number by zero, this
impossible demand will cause a

div
ide
-
by
-
zero exception
, perhaps causing the
computer to abandon the calculation or display an error message. Software
interrupt instructions function similarly to

subroutine
calls

and are used for a
variety of purposes, such as to request services from low level

system
software

such as

device drivers
. For example, computers often use software
interrupt instructions to communicate with the

disk controller

to request data be
read or written t
o the disk.

Each interrupt has its own interrupt handler. The number of hardware interrupts is
limited by the number of interrupt request (IRQ) lines to the processor, but there
may be hundreds of different software interrupts.

Interrupts are a commonly us
ed technique for

computer multitasking
, especially
in

real
-
time computin
g
. Such a system is said to be


Hardware Protocols

Protocols are the special sets of rules that two computers “agree” to use for


communication. One basic purpose of protocols is to make it possible for
computers

and networks of differing platforms to commu
nicate. The different platforms could

refer to hardware (e.g. a mainframe computer at a large company or an individual

PC at home) or to software (e.g. MS W indows, Red Hat, Ubuntu, Sedulity Linux,

or Macintosh etc. Operating Systems). Each platform perfor
ms communications,

and accomplishes most other tasks, in very different ways. Protocols which can be

implemented across, or without regard to platforms make it possible to bridge

these differences. Hardware protocols are specifically use to configure and
m
aintain

hardware devices. Each hardware manufacturer has developed protocols


Software Protocols

Application Layer Protocol

Application Layer is a term used in categorizing protocols and methods in

architectural models of computer networking. Both the OSI
model and the Internet

Protocol Suite (TCP/IP) define application layers. Application layer is present on

the top of the Transport layer. The application layer must include any protocol that

acts like the OSI's presentation & session layer protocol which i
s usually done

through libraries.

The two most common lower layer protocol used by application layer are TCP &

UDP. Common services have specific ports assigned to them, while client use

temporary ports. Application Layer includes all the higher
-
level prot
ocols which


are Hypertext transfer protocol (HTTP: port 80), virtual terminal (TELNET: port

23), file transfer (FTP: port 21) and electronic mail (SMTP: port 25). The virtual

terminal protocol permits a user on one machine to log into a distant machine and

work there. The file transfer protocol offers a way to move data efficiently from

one machine to another. Electronic mail was used for file transfer purpose but

later a specialized protocol was developed for it.

The Application Layer contains variety of p
rotocols that are commonly needed,

some them are mentioned as below;

Hyper test transport protocol (HTTP: port 80), virtual terminal (TELNET: port

23), file transfer (FTP: port 21) and electronic mail (SMTP: port 25), Domain

Name Services (DNS), News
Network Transport Protocol (NNTP), TCP/IP.

Multi User

A

multi
-
user

operating

system

is a

computer operating system

(OS) that allows multiple users on
different
computers or terminals to access a single

system

with one OS on it. These programs are
often quite complicated and must be able to properly manage the necessary tasks required by the
different users connected to it. The users will typically be at terminals

or computers that give them
access to the

system

through a network, as well as other machines on the

system

such as printers.
A

multi
-
user

operating

system

differs from a single
-
user

system

on a network in that each

user

is
accessing the same OS at differ
ent machines.

The

operating

system

on a computer is one of the most important programs used. It is typically
responsible for managing memory and processing for other applications and programs being run, as
well as recognizing and using hardware connected t
o the

system
, and properly
handling

user

interaction and data requests. On a

system

using a

multi
-
useroperating

system

this
can be even more important, since multiple people require the
system

to be functioning properly
simultaneously. This type of

system

is often used on
mainframes

and similar machines, and if
the

system

fails it can affect dozens or even hundreds of people.

A

multi
-
user

operating

system

allows multiple users to access the data

and processes of a single
machine from different computers or terminals. These were previously often connected to the
larger

system

through a wired network, though now wireless networking for this type of

system

is
more common. A

multi
-
user

operating

syst
em

is often used in businesses and offices where different
users need to access the same resources, but these resources cannot be installed on every

system
.
In a

multi
-
user

operating

system
, the OS must be able to handle the various needs and requests of
a
ll of the users effectively.

This means keeping the usage of resources appropriate for each

user

and keeping these resource
allocations separate. By doing this, the

multi
-
user

operating

system

is able to better ensure that

each

user

does not hinder the
efforts of another, and that if the

system
fails or has an error for
one

user
, it might not affect all of the other users. This makes a
multi
-
user

operating

system

typically
quite a bit more complicated than a single
-
usersystem

that only needs to handle the
requests and
operations of one person.

In a

multi
-
user

system
, for example, the OS may need to handle numerous people attempting to use
a single printer simultaneously. The

system

processes the requests and places the print jobs in a
queue that keeps them
organized and allows each job to print out one at a time. Without a

multi
-
user

OS, the jobs could become intermingled and the resulting printed pages would be virtually
incomprehensible.

Multi Tasking


Multitasking operating systems allow more than one pro
gram to run at a time. They can support
either preemptive multitasking, where the OS doles out time to applications (virtually all modern
OSes) or cooperative multitasking, where the OS waits for the program to give back control
(Windows 3.x, Mac OS 9 and
earlier).


multitasking

is a method where multiple tasks, also known as

processes
, are performed during the
same period of time. The tasks share common processing
resources, such as a

CPU

and main memory.
In the case of a computer with a single CPU, only one task is said to be

running

at any point in time,
meaning that
the CPU is actively executing instructions for that task. Multitasking solves the problem
by

scheduling

which task may be the one running at any given time, and

when another waiting task gets a
turn. The act of reassigning a CPU from one task to another one is called a

context switch
. When context
switches occur frequently enough the
illusion of

parallelism

is achieved. Even on computers with more
than one CPU (called

mu
ltiprocessor

machines), multitasking allows many more tasks to be run than
there are CPUs. The term "multitasking" has become an international term, as the same word in many
other languages such as German, Italian, Dutch, Danish and Norwegian.

Operating sy
stems may adopt one of many different

scheduling strategies
, which generally fall into the
following categories:



In

multiprogramming

systems, the running task keeps running until it performs an operation that
requires waiting for an external event (e.g. reading from a tape) or until the computer's scheduler
forcibly swaps the
running task out of the CPU. Multiprogramming systems are designed to maximize
CPU usage.



In

time
-
sharing

systems, the running task is required to relinquish the CPU, either volunt
arily or by an
external event such as a
hardware interrupt
. Time sharing systems are designed to allow several
programs to execute apparently simultaneously.



In

real
-
time

systems, some waiting tasks are guaranteed to be given the CPU when an external event
occurs. Real time systems are designed to control mechanical devices such as i
ndustrial robots,
which require timely processing.

Multi processing and Real time operating system


Multiprocessing

is the use of two or more

central processing units

(CPUs) within a single computer
system. The term also refers to the ability of a system to support more than one processor and/or the

ability to allocate tasks between them.
[1]

T
here are many variations on this basic theme, and the definition
of multiprocessing can vary with context, mostly as a function of how CPUs are defined (
multipl
e cores

on
one

die
, multiple dies in one

package
, multiple packages in one

system unit
, etc.).

Multiprocessing

sometimes refers to the execution of multiple concurrent software processes in a system
as opposed to a single process at any one instant. However, the

terms

multitasking

or

multiprogramming

are more appropriate to describe this
concept, which is
implemented mostly in software, whereas multiprocessing is more appropriate to describe the use of
multiple hardware CPUs. A system can be both multiprocessing and multiprogramming, only one of the
two, or neither of the two of them.

real
-
time operating system


A

real
-
time operating system

(
RTOS
) is an

operating system

(OS) intended to serve

real
-
time

application requests. It must be able to process data as it comes in, typically without buffering
delays. Processing time requirements (including any OS delay) are measured in tenths of seconds or
shorter.

A key characteri
stic of an RTOS is the level of its consistency concerning the amount of time it takes to
accept and complete an application's

task
; the variability is

jitter
.
[1]

A

hard

real
-
time operating system has
less jitter than a

soft

real
-
time operating system. The
chief design goal is not high

throughput
, but rather a
guarantee of a

soft or hard

performance category. An RTOS that can usually or
generally

meet
a

deadline

is a soft real
-
time OS, but if it can meet a deadline

de
terministically

it is a hard real
-
time OS.

[2]

An RTOS has an advanced algorithm for

scheduling
. Scheduler flexibility enables a wider, computer
-
system orchestration of process priorities, but a real
-
time OS is more frequently dedicated to a narro
w set
of applications. Key factors in a real
-
time OS are minimal
interrupt latency

and minimal

thread switching
latency
; a real
-
time OS is valued more for how quickly or how predictably it can respond than for the
amount of work it can perform in a given period of time.
[3]

Introduction to memory management Techniques

Memory management

is the function of a computer

operating system

responsible for managing t
he
computer's

primary memory
.
[1]
:pp
-
105
-
208

The

memory management function keeps track of the status of each memory location,
either

allocated

or

free
. It determines how memory is allocated among competing processes, deciding
who gets memory, when they receive it, and how much they are allowed. When me
mory is allocated it
determines which memory locations will be assigned. It tracks when memory is freed or

unallocated

and
updates the status.

Memory management techniques

[
edit
]
Single contiguous allocation

Single allocation

is the simplest memory management techni
que. All the computer's memory, usually
with the exception of a small portion reserved for the operating system, is available to the single
application.

MS
-
DOS

is an example of a system which
allocates memory in this way. An

embedded
system

running a single application might also use this technique.


A system using single contiguous allocation may still

multitask

by

swapping

the contents of memory to
switch among users. Early versions of the

Music

operating system used this technique.

[
edit
]
Partitioned allocation

Partitioned allocation

divides primary memory into multiple

memory partitions
, usually contiguous areas
of memory. Each partition might contain all the information for a specific

job

or

task
. Memory
management consists of allocating a partition to a job when it starts
and unallocating it when the job ends.

Partitioned allocation usually requires some hardware support to prevent the jobs from interfering with
one another or with the operating system. The

IBM System/360

used a

lock
-
and
-
key

technique. Other
systems used

base and bounds

registers which contained the limits of the partition

and flagged invalid
accesses. The

UNIVAC 1108

Storage Limits Register

had separate base/bound sets for instructions and
data. The system took advantage of me
mory

interleaving

to place what were called
the

i

bank

and

d

bank

in separate memory modules.
[2]
:p.3
-
3

Partitions may be either

static
, that is defined at

Initial Program Load

(IPL) or

boot time

or by
the

computer operator
, or

dynamic
, that is automatically created for a specific job.

IBM System/360
Operating System

Multiprogramming with a Fixed Number of Tasks

(MFT) is an example of static
partitioning, and

Multiprogramming with a Variable Number o
f Tasks

(MVT) is an example of dynamic.
MVT and successors use the term

region

to distinguish dynamic partitions from static ones in other
systems
[3]
:p.73
.

Partitions may be

relocatable

using hardware

typed memory
, like the

Burroughs Corporation B5500
, or
base and bounds registers like the

PDP
-
10

or

GE
-
635
. Relocatable partitions are able to be

compacted

to
provide larger chunks of contiguous physical memory. Compaction moves "in
-
use" are
as of memory to
eliminate "holes" or unused areas of memory caused by process termination in order to create larger
contiguous free areas
[4]
:p.94
.

Some
systems allow partitions to be

swapped out

to

secondary storage

to free additional memory. Early
versions of IBM's

Time Sharing Option

(TSO) swapped users in and out of a single

time
-
sharing

partition.
[5]

[
edit
]
Paged memory management

Main article:

Virtual memory

Paged allocation

divides the computer's primary memory into fixed
-
size units called

page frames
, and
the program's

address space
into

pages

of the same size. The hardware

memory management unit

maps
pages to frames. The physical memory can be allocated on a page basis while the address space
appears contiguous.

Usually, with paged memory management, each
job runs in its own address space, however,
IBM

OS/VS/2 SVS

ran all jobs in a single 16MiB virtual address space.

Paged memory can be

demand
-
paged

when the system can move pages as required between primary
and secondary memory.

[
edit
]
Segmented memory management

Segmented memory

is the only memory management technique that does not provide the user's
program with a 'linear and contiguous address space."
[1]
:p.165

Segments

are areas of memory that usually

correspond to a logical grouping of information such as a code procedure or a data array. Segments

require hardware support in the form of a

segment table

which usually contains the physical address of
the segment in memory, its size, and other data such as access protection bits and status (swapped in,
swapped out, etc.)

Segmentation allows better acc
ess protection than other schemes because memory references are
relative to a specific segment and the hardware will not permit the application to reference memory not
defined for that segment.

It is possible to implement segmentation with or without pagin
g. Without paging support the segment is
the physical unit swapped in and out of memory if required. With paging support the pages are usually the
unit of swapping and segmentation only adds an additional level of security.

Addresses in a segmented system
usually consist of the segment id and an offset relative to the segment
base address, defined to be offset zero.

The Intel

IA
-
32

(x86) architecture allows a process to have up to 16,383 segments

of up to 4GiB each. IA
-
32 segments are subdivisions of the computer's

linear address space
, the virtual address space provided
by the paging hardware.
[6]

T
he

Multics

operating system is probably the best known system implementing segmented memory.
Multics segments are subdivisions of the computer's

physical memory

of up to 256 pages, each page

being 1K 36
-
bit words in size, resulting in a maximum segment size of 1MiB (with 9
-
bit bytes, as used in
Multics). A process could have up to 4046 segments.

File systems, File management,Process management and scheduling.,
Special requirements and facilit
ies for multiprocessing environment.,
Examples of multiprocessing operating systems

File systems


File
-
System Structure



Hard disks have two important properties that make them suitable for
secondary storage of files in file systems: (1) Blocks of data can
be rewritten in
place, and (2) they are direct access, allowing any block of data to be accessed
with only ( relatively ) minor movements of the disk heads and rotational
latency. ( See Chapter 12 )



Disks are usually accessed in physical blocks, rather tha
n a byte at a time.
Block sizes may range from 512 bytes to 4K or larger.



File systems organize storage on disk drives, and can be viewed as a layered
design:

o

At the lowest layer are the physical devices, consisting of the magnetic
media, motors &

controls, and the electronics connected to them and
controlling them. Modern disk put more and more of the electronic

controls directly on the disk drive itself, leaving relatively little work for
the disk controller card to perform.

o

I/O Control

consists
of

device drivers
, special software programs ( often
written in assembly ) which communicate with the devices by reading
and writing special codes directly to and from memory addresses
corresponding to the controller card's registers. Each controller card
(

device

) on a system has a different set of addresses (

registers,
a.k.a.

ports

) that it listens to, and a unique set of command codes and
results codes that it understands.

o

The

basic file system

level works directly with the device drivers in
terms of
retrieving and storing raw blocks of data, without any
consideration for what is in each block. Depending on the system,
blocks may be referred to with a single block number, ( e.g. block #
234234 ), or with head
-
sector
-
cylinder combinations.

o

The

file orga
nization module

knows about files and their logical blocks,
and how they map to physical blocks on the disk. In addition to
translating from logical to physical blocks, the file organization module
also maintains the list of free blocks, and allocates free

blocks to files as
needed.

o

The

logical file system

deals with all of the meta data associated with a
file ( UID, GID, mode, dates, etc ), i.e. everything about the file except
the data itself. This level manages the directory structure and the
mapping of
file names to

file control blocks, FCBs
, which contain all of
the meta data as well as block number information for finding the data
on the disk.



The layered approach to file systems means that much of the code can be
used uniformly for a wide variety of d
ifferent file systems, and only certain
layers need to be filesystem specific. Common file systems in use include the
UNIX file system, UFS, the Berkeley Fast File System, FFS, Windows systems
FAT, FAT32, NTFS, CD
-
ROM systems ISO 9660, and for Linux the ex
tended file
systems ext2 and ext3 ( among 40 others supported. )



File management



)Also referred to as simply a

file system

or

filesystem. The

system

that an
operating
system

or

program

uses to organize and keep track of

files
. For example, a

hierarchical

file
system

is one that uses

directories

to organize files into a

tree structure
.

Although the operating system provides its own file management system, you can buy
separate file management systems. These systems interact smooth
ly with the operating
system but provide more

features
, such as improved

backup

procedures

and stricter file
protection.


The file manager handles all files on secondary storage media. To perform these tasks,
file management must:



File management






be able to identify the numerous files by giving unique names to them




maintain a

list telling where exactly each file is stored, how many sectors on
the medium it occupies, and in which order those sectors make up the file



provide simple and fast algorithms to read and write files in cooperation with
the device manager



give and deny
access rights on files to users and programs



allocate and deallocate files to processes in cooperation with the process
manager



provide users and programs with simple commands for file handling






File management



The data that we work with on computers is ke
pt in a hierarchical file system in
which directories have files and subdirectories beneath them. Although we use the
computer operating system to keep our image data organized, how we name files
and folders, how we arrange these nested folders, and how we

handle the files in
these folders are the fundamental aspects of file management. The operating
system's organization of our data can be enhanced by the use of cataloging
programs, which make organizing and finding image files easier than simply relying
o
n the computer's directory structure. Another feature of catalog programs is that
they can streamline backup procedures for better file protection

,Process management



A

process

is a program in a state of execution. It is a unit of work for the operating
system. A process can be created, executed, and stopped. In contrast, a program is
always static and does not have any state. A program may have two or more
processes running. A process and a program are, thus, two different entities.



To accomplish a task,

a process needs to have access to different system resources
like I/O devices, CPU, memory etc. The process management function of an
operating system handles allocation of resources to the processes in an efficient
manner. The allocation of resources req
uired by a process is made during process
creation and process execution.



A process changes its state as it is executed. The various states that a process
changes during execution are as follows



New

process is in a new state when it is created,

o

Ready

proc
ess is in ready state when it is waiting for a processor,

o

Running

process is in running state if processor is executing the process,

o

Waiting

process is in waiting state when it waits for some event to happen
(I/O etc), and

o

Terminated

process that has
finished execution is in terminated state.




A system consists of collection of processes

(1) system process that execute system
code, and (2) user process that execute user code. OS mainly handles the execution
of user code, though it may also handle variou
s system processes.

The concurrent execution of the process requires process synchronization and CPU
scheduling. The CPU scheduling, process synchronization, communication, and deadlock
situations are described in the following subsections.

scheduling

In

computer science
,

scheduling

is the method by which

threads
,

processes

or data

flows

are given
access to system resources (e.
g. processor time, communications bandwidth). This is usually done
to

load balance

a system effectively or achieve a target

quality of service
. The need for a scheduling
algorithm arises from the requirement for most modern systems to perform

multitasking

(execute more
than one process at a time) and

multiplexing

(transmit multiple flows simultaneously).

The scheduler is concerned mainly with:



Throughput

-

The total number of processes that complete their execution per time unit.



Latency
, sp
ecifically:



Turnaround time
-

total time between submission of a process and its completion.



Response time

-

amount of time it takes from when a request was submitted until the

first
response is produced.



Fairness / Waiting Time
-

Equal CPU time to each process (or more generally appropriate times
according to each process' priority). It is the time for which the process remains in the ready queue.

In practice, these goals often

conflict (e.g. throughput versus latency), thus a scheduler will implement a
suitable compromise. Preference is given to any one of the above mentioned concerns depending upon
the user's needs and objectives.

In

real
-
time

environments, such as

embedded systems

for

automatic control

in industry (for
example

robotics
), the scheduler also must ensure that processes can meet

deadlines
; this is crucial for
keeping the system stable. Scheduled tasks are sent to mobile devices and

managed

through an
administrative back end.

Special requirem
ents

To be used efficiently, all

computer software

needs certain

hardware

components

or other software
resources to be present on a
computer
. These prerequisites are known as (computer)

system
requirements

and are often used as a guideline as opposed to an absolute rule. M
ost software defines
two sets of system requirements: minimum and recommended. With increasing demand for higher
processing power and resources in newer versions of software, system requirements tend to increase
over time. Industry analysts suggest that th
is trend plays a bigger part in driving upgrades to existing
computer systems than technological advancements.

Oftentimes manufacturers of games will provide the consumer with a set of requirements that are different
than those that are needed to run a sof
tware. These requirements are usually called the Recommended
Requirements. These requirements are almost always of a significantly higher level that the minimum

requirements, and represent the ideal situation in which to run the software. Generally speakin
g this is a
better guideline than minimum system requirements in order to have a fully usable and enjoyable
experience with a software.

facilities for multiprocessing environment


multiprocessing

(
SMP
) involves a

multiprocessor

computer hardware architecture where two or more
identical processors are connected to a single shared

main memory

and are controlled by a single OS
instance. Most common multiprocessor systems today use an SMP architecture. In the case of

multi
-
core

processors, the SMP ar
chitecture applies to the cores, treating them as separate processors.

SMP systems are

tightly coupled multiprocessor

systems

with a pool of
homogeneous processors running
independently, each processor executing different programs and working on different data and with
capability of sharing common resources (memory, I/O device, interrupt system and so on) and connected
using a

system bus

or a

crossbar
.

Examples of multiprocessing operating systems




BUSINESS APPLICATION
S


Business software

or business application is any
software

or set of
computer programs that are used by business users to perform various
business functions. These business applications are used to increase

productivity, to measure productivity and to perform business functions
accurately.

Some business applications are interactive i.e. they have a
graphical u
ser
interface

or user interface and user can query/modify/input data and
view results instantaneously. They can also run reports instantaneously.
Some business applications run in batch mode i.e. they are set up to run
based on a predetermined event/time a
nd business user does not need to
initiate them or monitor them.


Some business applications are built in
-
house and some are bought from
vendors (off the shelf software products). These business applications
either are installed on desktops or on big server
s.

The term covers a large variation of users within the business
environment, and can be categorized by using a small, medium and large
matrix:

The small business market generally consists of home
accounting
software
, and
office suites

such as
OpenOffice.org

or
Microsoft Office
.

The medium size, or
small and medium
-
si
zed enterprise

(SME), has a
broader range of software applications, ranging from accounting,
groupware
,
customer relationship management
,
human resource
management systems
,
outsourcing relationship management
, loan
origination software,
shopping
cart software
, field service software, and
other productivity enhancing applications.

The last segment covers enterprise level software applications, such as
those in the fields of
enterprise resource planning
,
enterprise content
management

(ECM),
business process management

(BPM) and
product
lifecycle management
. These applications a
re extensive in scope, and
often come with modules that either add native functions, or
incorporate the functionality of third
-
party computer programs.

Now,[
when?
] technologies that have previously only existed in
peer
-
to
-
peer

software applications, like
Kazaa

and
Napster
, are starting to
feature within business applications.
JXTA

is an
open source

platform

that enables the creation of machine and language
-
neutral
applicati
ons.

Types of business software tools



Enterprise application software (EAS)


Digital dashboards
-

Also known as business intelligence dashboards,
enterprise dashboards, or executive dashboards, these are visually
based summaries of business data that
show at
-
a
-
glance understanding
of conditions through metrics and key performance indicators (KPIs). A
very popular BI tool that has arisen in the last few years.[when?]


Online analytical processing, commonly known as OLAP (including
HOLAP, ROLAP and MO
LAP)
-

a capability of some management,
decision support, and executive information systems that supports
interactive examination of large amounts of data from many
perspectives.[1]


Reporting software generates aggregated views of data to keep the
mana
gement informed about the state of their business.


Data mining
-

extraction of consumer information from a database by
utilizing software that can isolate and identify previously unknown
patterns or trends in large amounts of data. There are a variety
of data
mining techniques that reveal different types of patterns.[2] Some of
the techniques that belong here are statistical methods (particularly
business statistics) and neural networks as very advanced means of
analysing data.


Business performance management (BPM)

Database
organization


Database normalization is the process of organizing the fields and tables
of a relational database to minimize redundancy and dependency.

Normalization usually involves dividing large tables
into smaller (and
less redundant) tables and defining relationships between them. The
objective is to isolate data so that additions, deletions, and modifications
of a field can be made in just one table and then propagated through the
rest of the database

using the defined relationships.


Edgar F. Codd, the inventor of the relational model, introduced the
concept of normalization and what we now know as the First Normal
Form (1NF) in 1970.[1] Codd went on to define the Second Normal
Form (2NF) and Third No
rmal Form (3NF) in 1971,[2] and Codd and
Raymond F. Boyce defined the Boyce
-
Codd Normal Form (BCNF) in
1974.[3] Informally, a relational database table is often described as
"normalized" if it is in the Third Normal Form.[4] Most 3NF tables are
free of ins
ertion, update, and deletion anomalies.


A standard piece of database design guidance is that the designer should
create a fully normalized design; selective denormalization can
subsequently be performed for performance reasons.[5]

Data base files, records

Summarizing data from database file records (Grouping)

The group processing function allows you to summarize data from existing
database records. You can specify:



The grouping fields



Selection values both before and after grouping



A keyed sequence access

path over the new records



Mapped field definitions that allow you to do such functions as sum,
average, standard deviation, and variance, as well as counting the records in
each group




The sort sequence and language identifier that supply the weights by wh
ich
the field values are grouped

You normally start by creating a file with a record format containing only the
following types of fields:



Grouping fields. Specified on the GRPFLD parameter that define groups.
Each group contains a constant set of values
for all grouping fields. The
grouping fields do not need to appear in the record format identified on the
FORMAT parameter.



Aggregate fields. Defined by using the MAPFLD parameter with one or
more of the following built
-
in functions:

%COUNT

Counts the rec
ords in a group

%SUM

A sum of the values of a field over the group

%AVG

Arithmetic average (mean) of a field, over the group

%MAX

Maximum value in the group for the field

%MIN

Minimum value in the group for the field

%STDDEV

Standard deviation of a field, over the group

%VAR

Variance of a field, over the group



Constant fields. Allow constants to be placed in field values. The restriction
that the Open Query File (OPNQRYF) command must know all fields in the
output format is
also true for the grouping function.

When you use group processing, you can only read the file sequentially.

For an example of group processing, see
Example: Summarizing data from
database file records (Grouping)
.

Example: Summarizing data from database file records (Grouping)

Using group processing


Assume you want to group the data by customer number and analyze the amount
field. Your database file

is FILEA and you create a file named FILEAA containing
a record format with the following fields:

FILEA

FILEAA

Cust

Cust

Type

Count (count of records per customer)

Amt

Amtsum (summation of the amount field)



Amtavg (average of the amount field)



Amtmax (maximum value of the amount field)

When you define the fields in the new file, you must ensure that they are large
enough to hold the results. For example, if the Amt field is defined as 5 digits, you
may want to define the Amtsum field as 7 digit
s. Any arithmetic overflow causes
your program to end abnormally.

Assume the records in FILEA have the following values:

Cust

Type

Amt

001

A

500.00

001

B

700.00

004

A

100.00

002

A

1200.00

003

B

900.00

001

A

300.00

004

A

300.00

003

B

600.00

You
then create a program (PGMG) using FILEAA as input to print the records.

fields


This article is about fields in algebra. For fields in geometry, see Vector field. For
other uses, see Field (disambiguation).


In abstract algebra, a field is a commutative ri
ng which contains a multiplicative
inverse for every nonzero element, equivalently a ring whose nonzero elements
form an abelian group under multiplication. As such it is an algebraic structure
with notions of addition, subtraction, multiplication, and div
ision satisfying the
appropriate abelian group equations and distributive law. The most commonly used
fields are the field of real numbers, the field of complex numbers, and the field of
rational numbers, but there are also finite fields, fields of functio
ns, various
algebraic number fields, p
-
adic fields, and so forth. To avoid confusion with other
uses of the word "field", the term "corpus" may also be used.

Any field may be used as the scalars for a vector space, which is the standard
general context for

linear algebra. The theory of field extensions (including Galois
theory) involves the roots of polynomials with coefficients in a field; among other
results, this theory leads to impossibility proofs for the classical problems of angle
trisection and squa
ring the circle with a compass and straightedge, as well as a
proof of the Abel

Ruffini theorem on the algebraic insolubility of quintic
equations. In modern mathematics, the theory of fields (or field theory) plays an
essential role in number theory and a
lgebraic geometry.

As an algebraic structure, every field is a ring, but not every ring is a field. The
most important difference is that fields allow for division (though not division by
zero), while a ring need not possess multiplicative inverses; for ex
ample the
integers form a ring, but 2x = 1 has no solution in integers. Also, the multiplication
operation in a field is required to be commutative. A ring in which division is
possible but commutativity is not assumed (such as the quaternions) is called a

division ring or skew field. (Historically, division rings were sometimes referred to
as fields, while fields were called commutative fields.)

As a ring, a field may be classified as a specific type of integral domain, and can be
characterized by the
following (not exhaustive) chain of class inclusions:


Types of files in database

11.1. Types of Database Files

The Oracle database consists of a number of physical files, often referred to
as
operating system files
, since they are usually created and maint
ained by the host
operating system. These physical files are used by Oracle for parameter storage,
database coordination, and data storage. The files shown in the following list,
which are described in the following sections, are unique to a particular dat
abase;

that is, each mounted and opened database must have all of these files, and the files
are not shared across instances except in the special case of the Oracle Parallel
Server, whose purpose is to share datafiles.



Parameter storage files:

o

Initializat
ion file (
INIT.ORA
)

o

Configuration file (
CONFIG.ORA
)



Database coordination files:

o

Control files

o

Redo log files



Data storage files



File
organization



FILE ORGANISATIONS



Introduction

Magnetic disk storage is available in many forms, including floppies, hard
-
disks, cartridge,

exchangeable multi
-
platter, and fixed disks. The following deals with the
concepts which are

applied, in many different ways, to all of the above methods.

A typ
ical disk pack comprises of 6 disks held on a central spindle. As the top
and bottom are

disregarded with recording information, only 10 surfaces are used, each with
200 concentric

recording tracks. A diagrammatic representation is shown in Figure 1.

Ea
ch of the 200 tracks will be capable of holding equal amounts of
information as this is a feature

that is provided by the special software (housekeeping) that is used in
conjunction with the handling

of disk files. When the unit is in position in the dri
ve, the tracks are accessed
by a comb of 10

read/write heads held rigidly on an arm assembly which moves in and out
between the disk as


illustrated. In this way 10 tracks may be referenced without further
movement of the heads once

they are positioned o
ver the first track. For the sake of economy it is
therefore usual to record over

a 'cylinder' of data (see Figure 1) and avoid unnecessary movement of the
heads.

The disk pack is loaded onto the drive and revolves at normal speed of
approximately 3600 r
pm

when being accessed. Each track can hold upwards of 4000 bytes.
Sometimes the sectors on a

disk are used in a similar manner to inter
-
block gaps on a tape file but in
other cases they are

ignored as far as data handling is concerned.

Because this de
vice has the ability to locate an area of data directly it is
known as a Direct Access

Device and is popular for the versatility that this affords. Direct access
devices provide a storage medium which is a satisfactory compromise
between main store and ma
gnetic tape.

Sequential file

A
file system

(or
filesystem
) is an
abstraction

to store, retrieve and update a set of
files
. The term also identifies the
data structures

specified by some of those
abstractions, which a
re designed to organize multiple files as a single stream of
bytes
, and the
network protocols

specified by some
other of those abstractions,
which are designed to allow files on a remote machine to be accessed. By
extension, the term also identifies
software

or
firmware

components that
implement the abstraction (i.e. that actually access the data source on behalf of
other software or firmware that uses those components).

The file system manages access to the data and the
metadata

of the files, and
manages the available space of the device(s) which contain it. Ensuring reliability
is a major responsibility of a file system. A file system organizes data in an
efficient
manner, and may be tuned to the characteristics of the backing device.

Some file systems are used on
data storage devices
, to maintain the locations of the
files on the device (which is seen as a stream of bytes). Others provide access to
files residing on a server, by acting as clients for a
network protocol

(e.g.
NFS
,
SMB
, or
9P

clients). Others provide access to data that is not stored on a persistent
device, and/or may be computed on request (e.g.
procfs
). This is dist
inguished
from a
directory service

and
registry
.



Random file

Random access

files

consist of records that can be accessed in any sequence.


This means the data is stored exactly
as it appears in memory, thus saving processing time (because no translation is necessary) bo
th in when the file is
written and in when it is read.

Random files are a better solution to database problems than

sequential files
, although there are a few
disadvantages.


For one thing, random files are not especially transportable.


Unlike sequential files, you cannot
peek inside them with an editor, or type them in a meaningful way to the screen.


In fact, moving a PowerBASIC
random file to another computer or language w
ill probably require that you write a translator program to read the
random file and output a text (sequential) file.

One example of the transportability problem strikes close to home.


Interpretive BASIC uses Microsoft's non
-
standard format for

floating
-
point

values, and PowerBASIC uses IEEE standard floating
-
point conventions, this
means you cannot read the floating
-
point fields of random files created by Interpretive BASIC with a PowerBASIC
program
, or vice versa, without a bit of extra work.


Indexed file

An indexed file is a computer file with an index that allows easy random access to any record given its
file key.

The key must be such that it uniquely identifies a record. If more than one index
is present the other ones
are called alternate indexes.

The COBOL language supports indexed files with the following command in the FILE CONTROL
section

ORGANIZATION IS INDEXED

Support for indexed files was built into IBM Mainframe computer COBOL .[1] The
indexes were created
with the file and maintained by the system.

In later systems

Indexed files were replaced by current relational databases.

Foxpro

FoxPro was a text
-
based procedurally oriented programming language
and DBMS, originally published by Fox
Software and later by
Microsoft, for MS
-
DOS, Windows, Macintosh, and UNIX. The final
published release of FoxPro was 2.6, after which the development has
continued under Visual FoxPro.

Although FoxPro is a Database Management System (DBMS) and it
does supp
ort relationships between tables, it is not considered a

Relational Database Management System (RDBMS), lacking
transactional processing.

Sold and supported by Microsoft, there is an active worldwide
community of FoxPro users and programmers. FoxPro 2.6 fo
r UNIX
(FPU26) has even been successfully installed on Linux and
FreeBSDusing the Intel Binary Compatibility Standard (ibcs2) support
library.

MS
-

Office,

Microsoft Office is an office suite of desktop applications, servers and
services for the Microsoft
Windows and OS X operating systems,
introduced by Microsoft on August 1, 1989. Initially a marketing term
for a bundled set of applications, the first version of Office contained
Microsoft Word, Microsoft Excel, and Microsoft PowerPoint. Over the
years, Of
fice applications have grown substantially closer with shared
features such as a common spell checker, OLE data integration and
Microsoft Visual Basic for Applications scripting language. Microsoft
also positions Office as a development platform for line
-
o
f
-
business
software under the Office Business Applications brand. Office is
reported to now be used by over a billion people worldwide.[3]

The current versions are Office 2013 for Windows, released on October
11, 2012;[4] and Office 2011 for OS X, released

October 26, 2010.[5]
On 24 October 2012, the RTM final code of Office 2013 Professional
Plus has been released to TechNet and MSDN subscribers for
download.[6] On 15 November 2012, the 60
-
day trial version of Office
2013 Professional Pl
us was released for

download.

Windows 98/2000

Microsoft Windows is a series of graphical interface operating systems
developed, marketed, and sold by Microsoft.


Microsoft introduced an operating environment named Windows on
November 20, 1985 as a graphical operating system s
hell for MS
-
DOS
in response to the growing interest in graphical user interfaces (GUI).[2]
Microsoft Windows came to dominate the world's personal computer
market with over 90% market share, overtaking Mac OS, which had
been introduced in 1984.

As of April

2013, the most recent versions of Windows for personal
computers, mobile devices, server computers and embedded devices are
respectively Windows 8, Windows Phone 8, Windows Server 2012 and
Windows Embedded 8 Industry.

FOXPRO :

VIEWING AND EDITING
DATA


Fo
xpro
-

version

The information in this article applies to:

Microsoft Visual FoxPro for Windows, versions 3.0, 3.0b, 5.0, 5.0a, 6.0,
7.0, 8.0, 9.0

Microsoft Visual FoxPro for Macintosh, version 3.0b

Microsoft FoxPro for Windows, versions 2.5, 2.5a, 2.5b, 2.
6, 2.6a, 2.6b

Microsoft FoxPro for MS
-
DOS, versions 1.0, 1.01, 1.02, 2.0, 2.5, 2.5a,
2.5b, 2.6, 2.6a

Microsoft FoxPro for Macintosh, versions 2.5b, 2.5c, 2.6a

Microsoft FoxPro for UNIX, version 2.6

Microsoft FoxBASE+ for MS
-
DOS, versions 1.21, 2.0, 2.1

Mic
rosoft FoxBASE+/386 for MS
-
DOS, versions 2.0, 2.1

Microsoft Fox BASE for MS
-
DOS, version 2.17

Microsoft FoxBASE+ for the Macintosh, versions 1.0, 1.1, 2.0, 2.01



SUMMARY

Listed below are all versions of Visual FoxPro, FoxPro, Fox BASE, and
FoxBASE+ for
MS
-
DOS, Windows, and the Macintosh.


NOTE: This article does not cover FoxBASE+ for UNIX, which is
supported by the Santa Cruz Operation (SCO).


Windows

Visual FoxPro for Windows: 3.0, 3.0b, 5.0, 5.0a, 6.0, 7.0, 8.0, 9.0

FoxPro for Windows: 2.5, 2.5a, 2.5b
, 2.6, 2.6a, 2.6b


Macintosh

Visual FoxPro for Macintosh: 3.0b

FoxPro for Macintosh: 2.5b, 2.5c, 2.6a

FoxBASE+ for the Macintosh: 1.0, 1.1, 2.0, 2.01


MS
-
DOS

FoxPro for MS
-
DOS: 1.0, 1.01, 1.02, 2.0, 2.5, 2.5a, 2.5b, 2.6, 2.6a

FoxBASE+/386 for MS
-
DOS: 2.0,
2.1

FoxBASE+ for MS
-
DOS: 1.21, 2.0, 2.1


Fox BASE for MS
-
DOS: 2.17


UNIX

FoxPro for Unix: 2.6

Creating database file

Answer

There are cataloging FREEWARE programs that you can download that will store the location, name
and file info to a database. It's
not worth your time to create this yourself when there are many
freeware programs that provide astounding results and flexibility using the freeware

Answer
--

In order to backup your files, please download all the files from your public_html folder to your
computer by using your favorite FTP client. After that you can easily upload back the files to your
hosting account and your website will be restored.

operation of database

Database Operations

Lyris List Manager uses a number of database files for storing
all its information.
These files are stored in the ~lyris
\
db directory. The command line options operate
on the database files:

dbcreate


Create all database tables used by Lyris List Manager. Any existing tables in the "db"
directory will be deleted and r
ecreated.

If you specify a password on the command line, this will be used to create a default
administrator account with the name "admin". If you do not specify a password the
password for the admin account will be "lyris".

For example, to create the data
bases with an admin password of "blue", you would
type:

lyris dbcreate blue

Please note that this will completely erase any data you have in ~lyris
\
db and start
you anew. If you are unsure about this command, back up your ~lyris
\
db directory
first.


Lyris
List Manager must not be running when this command is run.