Computer technologies and their functionality are an
important aspect of any Information Systems and Technology
project due to the potential performance and functional gains
that it provides. This section will compare the available
technologies and whether they are executable and will specify
the drains on the resources. The licensing issues, hardware
requirements and feasibility will be considered.
Background information on hardware and software
Enterprise level Operating systems such as, RedHat Enterprise
4.0 and
Windows Server System require reasonable high-specification
computer systems to run on due to the inherent drag on
resources as the systems are used by remote clients and local
administrators to serve websites, active directories and
synchronise
Windows and NIS authentication systems.
The average server systems these days comprise of:
- Intel (or equivalent) CPU ~ 2.1Ghz
- 1Ghz RAM
- NFS/Samba Share or 80GB HDD
- Peripherals
o CD-ROM/DVD-ROM
o Back-up Tape Drives
o NIC Interface (10/100/1000 Mbps)
Average server software installations include:
- Enterprise Server
- Windows Server System
- Windows 2000/NT
- Windows Server 2003
- Enterprise Linux
- RedHat Enterprise 4.0
- CentOS
- Debian Sarge
- Ubuntu Enterprise
NetBSD/FreeBSD
o WebServer
o Shared Resources
o Shared I/O
Enterprise-class products are those that have specific
functionalities embedded in the core aspects of the software to
allow administrators to control the use of the network and the
available resources. There are free (as in free to use and free
to share) distributions as well as paid-for products which
often include support contracts and priority security updates
delivered directly to the system using advanced transparent
delivery mechanisms.
There are several points that must be considered:
- Price
- Availability
- Scalability
- Features
- Frequency of updates
- License Type
o OpenSource GNU licences
o Closed-source proprietary licenses
.NET framework
Mono
.NET framework provides developers with the programming
power and flexibility to engineer applications for
Windows and
Linux while maintaining cross-platform capabilities that
have previously only been thought to exist with
Java and the Sun JVM. One of the great advantages of Mono
is that it allows developers and engineers to cross-compile and
thus, develop applications which can theoretically function
properly on both
Windows and Linux.
Cross-Language Interface Layer
It is aim to utilise some advanced features available in
several semantically different languages. This can only be
achieved by creating a Cross-Language Interface Layer, which
will allow the various languages to function together properly.
This will require the usage of messaging systems and pointer
passing to allow the transfer of data from one programming
language to the other.
PHP and Perl both allow the dynamic loading of
Linux Shared libraries directly at run-time which will
allows the creation of entry points for those specific
languages. ASP.NET will require either the creation of COM
classes which are installed as system-wide libraries or the
usage of Dynamic Linked libraries (DLLs) which can be loaded at
run-time.
Reasons for the application of multiple languages and their
benefits:
- PHP:
PHP is extremely simple and has advanced features.
- PHP has excellent text processing features, from the
POSIX Extended or Perl regular expressions to parsing XML
documents.
- For parsing and accessing XML documents, PHP 4 supports
SAX and DOM standards. The XSLT extension can also be used to
transform XML documents. PHP 5 standardizes all the XML
extensions on the solid base of libxml2 and extends the
feature set by adding the SimpleXML and XMLReader
support.
- Integrated MAIL function.
Perl:
- Perl is structurally similar to C-like languages
- Excellent regular expression handling and pattern
matching functions
- Excellent extensibility
- Easily embeddable into command shell
- Common language semantics
TCL:
- Fast access to shell and system commands
- Rapid
Development platform
- Extensible
- A large database of
OpenSource Libraries
.NET:
- Core Microsoft Languages allowing Intercommunication
- A large array of Database connectivity functions
- Compiled instead of interpreted
- Access to Microsoft foundation classes
- Provides some interoperability with Java
The Cross-Language Interface Layer will aim to provide
interface functionality for all these languages either through
XML interpretation of scripts or via core changes made to
specific Open Source distribution.

Printer friendly PDF