October 2006 - Posts
My post today was all about my final project in Data Structure and Algorithm. I already took Data Structure wayback when I was in Computer Engineering Technology. And I never thought that I will take this again because I expect more a lot on project development and system design. So I just want to share my final project but I will not include Binary Search because that algorithm was also included in my project. I edit the program to make it simple and remove graphics. What is so good with this program is that it has an iteration that was discussed on my Numerical Analysis class. I wonder how can I apply more my Mathematics skills on my developer's track. 
#include<stdio.h>
#include<math.h>
#define MAX 13 /* Initialize 13 numbers so that we can see that the program was actually sorting*/
#define PTR_SIZE 10
typedef struct _node_var
{
int data;
struct _node_var *next;
}node_var;
void initialise ( node_var* [] );
void radix_sort ( int [], node_var* [] );
void refill_list ( int [], node_var* []);
void insert2q ( node_var* [], int, int);
void show ( int [] );
int del_q ( node_var* [] , int );
void main()
{
int list[13];
int ctd;
node_var *aux[PTR_SIZE];
clrscr();
initialise ( aux );
printf("Randomized list is :\n");
for (ctd=0;ctd<13;ctd++)
{
scanf ("%d",&list[ctd]);
}
show(list);
radix_sort ( list , aux );
printf("\n\nSorted list is :\n");
show(list);
}
void initialise ( node_var *aux[] )
{
int i;
for(i=0;i<PTR_SIZE;i++)
aux
= NULL;
}
void radix_sort ( int list[], node_var *aux[] )
{
int i, exp=0, j, max, nod =0,nth_d ;
/* FIND LARGEST NUMBER IN ARRAY */
max = list[0];
for(i=0;i<MAX;i++)
if(list
> max )
max = list
;
/* FIND NO. DIGITS IN MAX */
while(max > 0 )
{
nod++;
max = max / 10;
}
for( i=0; i<nod; i++)
{
exp++;
for(j=0;j<MAX;j++)
{
nth_d = list[j] % (int)pow(10,exp);
nth_d = nth_d / (int)pow(10,exp-1);
insert2q( aux, nth_d , list[j] );
}
refill_list (list,aux);
printf("\n\nIteration %d :\n\t ",i+1); /*Includes iteration that was discussed on my Numerical Analysis Class*/
show(list);
}
}
void insert2q ( node_var *aux[] ,int i, int val )
{
node_var *temp,*rear;
temp = ( node_var * ) malloc ( sizeof (node_var) );
temp->data = val;
temp->next = NULL;
if(aux
==NULL)
{
aux
= temp;
rear = temp;
}
else
{ rear = aux
;
while(rear->next != NULL )
rear = rear->next;
rear->next = temp;
rear = temp;
}
}
void refill_list ( int list[] , node_var *aux[] )
{
int i, j=0;
for(i=0;i<PTR_SIZE;i++)
{
while(aux
!= NULL)
{
list[j] = del_q ( aux , i );
j++;
}
}
}
int del_q ( node_var *aux[] , int i )
{
node_var *temp;
temp = aux
;
aux
= aux
->next;
temp->next = NULL;
return temp->data;
}
void show ( int list[] )
{
int i;
for(i=0;i<MAX;i++)
printf("%8d",list
);
}
That's it! Well before I forgot, the blog seems to change my "[ i ]" array as a bulb symbol.
Understanding SQL Server 2005 Features
For this blog, you must have some experience on Microsoft SQL Server 7.0 or SQL Server 2000 Architecture.
Under the new features of this 2005 Architecture of Microsoft SQL Server are:
1.) Notification Services
2.) Reporting Services
3.) Native HTTP Support
Notification Services: (Which one of the features I like most)
Notification Services provides a framework for developing subscription-based applications through which users are notified about events.
Instances
A Notification Services instance is defined in an XML configuration file and implemented as a Microsoft Windows® service that stores its data in a SQL Server database. The instance stores subscriber data that can be shared across all of its applications, and controls the generation and delivery of notifications. The Windows service for an instance is named NS$instance_name and the database associated with the instance is named instance_nameNSMain
ApplicationsEach instance can control multiple applications. An application is defined in an XML application definition file (ADF) and implemented as a database named instance_nameNSapplication_name. Applications store information about events, subscriptions, and notifications.
The main features of Notification Services in SQL Server 2005 are described in the following table.
|
|
| Feature |
Description |
| Subscription Management Objects |
An API for building subscription management applications through which users can subscribe to events. |
| Event APIs |
Four ways for event sources to enter event information into the system: a managed API, a COM-based API, an XML file–based API, and a stored procedure–based API. |
| Set-based subscription processing |
Set-based operations to relate events to subscriptions and generate notifications. This approach means that your notification application can use the performance and scalability of the SQL Server relational database engine. |
| Notification formatting and delivery |
Extensible Stylesheet Language (XSL) to format notifications for multiple device types, and deliver them using an extensible delivery channel architecture. This allows notifications to be delivered to virtually any kind of device using any protocol. |
Reporting Services:
You can use Reporting Services to create reports from SQL Server data. Reports can be designed using the Visual Studio .NET–based Report Designer and accessed through an IIS Web site.
The main features of Reporting Services
Reporting Authority- You can use the Report Designer in the Business Intelligence Development Studio to create a report. Query builders make it easy to define the data sets on which your reports are based, and you can use the graphical design environment to create many kinds of reports, including tabular, matrix, or free-form reports.
Report Management- Reporting Services includes the Report Manager tool, which you can use to manage report security, schedule report generation and distribution, and manage report history.
Report Execution- Reports are executed in a loosely coupled fashion, taking advantage of parallel query processing for performance. Reports are compiled as .NET assemblies for greater performance.
Report Access- Users can access reports through a dedicated IIS Web site, from which reports can be exported in a number of commonly used formats, such as HTML and PDF. Additionally, reports can be delivered to users via e-mail through a subscription.
Overview of Native HTTP Support:
When running on Microsoft Windows Server™ 2003, SQL Server 2005 can natively respond to HTTP requests without the need for Web server software such as Internet Information Services (IIS). This makes it simpler to implement Web services based on a SQL Server database.
Managing HTTP endpointsTo enable HTTP requests to be handled natively by SQL Server, you must create one or more HTTP endpoints using the CREATE ENDPOINT statement. The CREATE ENDPOINT statement is used to:
Register a URL with http.sys so that requests to that URL are redirected to SQL Server. Specify the TCP ports on which requests will be accepted. Specify an authentication mechanism for the endpoint. You can authenticate clients by using basic, digest, or integrated authentication methods. Set the initial state (stopped or started) of the endpoint. By default, endpoints are created in a stopped state. To start an endpoint after it has been created, you must use the ALTER ENDPOINT statement to set the state to started.Specify client Internet Protocol (IP) address limitations to control access to the endpoint.Create one or more Web methods that users can call through this endpoint. Web methods can be stored procedures or user-defined functions.Specify whether ad hoc query batches can be executed using this endpoint.
After an HTTP endpoint has been created, you can control access to the endpoint by granting, revoking, or denying CONNECT permission to logins.
Another day for another blog. It's been a long time since I didn't post a new blog, so for my today’s post, I will tackle an overview of what an Operating System is all about and I will also upload my presentation file on this blog.
Operating System is a software or set of programs the mediate access between physical devices and applications programs. Some of its characteristics are multi-tasking, multi-processing, multi-user, protected mode, support for graphics, and built-in support for networks.
So let’s take a look of an overview of its history development:
a. Unix- 1960’s, developed by AT&T, designed to be portable, multitasking, multi-user in a time-sharing configuration.b. MS-DOS- 1980’s, developed by Microsoft, specialized in programming languages and software development.c. SUN OS- 1982, version of the UNIX OS, developed by SUN Microsystems, specialized in workstations and server system.d. Mac OS- 1984, developed by Apple Computer for their Apple Macintosh Computer, widely credited for their popularizing the GUI.e. Windows 1.0- 1985, was the first attempt of Microsoft to implement a multi-tasking graphical user interface based on the operating system environment on the PC platform.f. OS/2- next released from Windows 1.0, created by Microsoft and IBM, to be used on IBM’s Personal System/2 computers. It will be discontinued to use at the end of this year 2006. It is intended as a protected-mode, doesn’t share similarities on Windows, but are alike in UNIX and XENIX. g. Windows 3.0- 1990, third major released of Microsoft Windows, specialized on GUI interface.h. Windows NT 3.1- 1993, first released of Windows NT, capable of business server. After Windows NT 3.1 came Windows NT Advanced Server.i. Windows 1995- 1995, a consumer-oriented graphical user interface-based operating system. Codename: Chicago. It was widely improved from its GUI features whose format and structure is still used today by Windows XP.j. Windows 1998- 1998, a graphical operating system and an update of Windows 95, among its features are AGP support, functional USB drivers, and support for multiple monitors and WebTV.k. Windows 2000- 2000, comes with four versions like Professional, Server, Advanced Server, and Datacenter Server. It was functional in Microsoft Management Console (MMC), and Standard System Management Applications.l. Windows XP-2001, successor of Windows 2000, developed by Microsoft for use on general-purpose computer systems, including home and business desktops, notebook computers, and media centers. It was known for improved efficiency and stability, presents significantly redesigned GUI, and a change for more user-friendly than previous versions Windows by Microsoft company. Unfortunately, Windows XP was criticized from its security vulnerabilities, tight integration of applications such as Internet Explorer and Windows Media Player, and some aspects of its user interface.m. Windows Vista- June 2006 for Beta testing, codename: Longhorn, it will be scheduled for released on November 2006 for business edition and January of 2007 for consumer editions. This was the longest time span for release on Windows since Windows XP with approximately 5 years. According to Microsoft, Windows Vista has hundreds of new features including updated GUI, and visual style, improved searching, new multimedia creation tools, and completely redesigned networking audio, print and display sub-systems.
Pretty cool on a summary with that one! Next time, I will try more on Vista because that was my final project on my second semester on Operating System.
So on deeper knowledge, Operating System composed of different functions namely:
1.) Processor Management
2.) Memory Management
3.) Housekeeping
4.) User Interface
5.) Storage Management
6.) Device Management
7.) Job Sequencing
8.) Job Control
9.) Job Sequencing
10) Error Handling
11.) I/O Handling
12.) Interrupt Handling
13.) Scheduling
14.) Resource Control
15.) Protection
Wow, so much for that. If you will have OS major subject in the future, all of them are likely to be discussed or maybe on your second OS. At first, functions of an Operating System may not likely to be noticed at first but they all exist in an Operating System.