Documente Academic
Documente Profesional
Documente Cultură
Project
On
StudyOfVisopsys
By:
1)BVSANIKETH13BCE0031
2)DHEERAJCAKSHAY13BCE0834
3)DEVIPRASADREDDY13BCE0535
CONTENTS
Chapter No.
Title
Page No.
CHAPTER
ABSTRACT
CHAPTER
INTRODUCTION TO VISOPSYS
2.1
CHAPTER
MOTIVATION
CHAPTER
IMPLEMENTED/UNIMPLEMENTED SECTIONS
CHAPTER
PROJECT DESCRIPTION
5.1
Overview of IPC
7
5.2
5.3
Challenges
CHAPTER
6
6.1
SUMMARY
References
10
11
May 2015
Signature
Name with Regno
Signature
Name with Regno
Signature
Name with Regno
ACKNOWLDEGEMENT
ABOUT VISUAL OPERATING SYSTEM DEVELOPER
-------------------------------------------------------------------The primary developer of Visopsys is Andy McLaughlin, a 30something programmer originally from Calgary, Canada.
Several years ago, she moved to London, UK, after a year in
Boston and 2 years in San Jose, California. Like many other
hobby OS writers, she build Visopsys in here spare time.
She is not actively seeking other programmers to assist in the
development of Visopsys at this time, but she does gladly accept
code submissions and suggestions.
An operating system kernel is a big enough challenge to be
discouraging at times. In comparison, the Pascal compiler she
wrote over an eight month period is trivial.
On the other hand, since she does everything by herself she is
able to keep the development on a unified path.
The architecture that develops is she hopes is consistent (for
better or worse) and thus the end product reflects the vision of a
single programmer. It can be argued that this is the good, oldfashioned way of producing software.
Abstract:
Basically an Operating System is an elementary part of any computer
running in the present generation since it being the mode of interaction,
hence there are a wide range of open source small scale operating
systems which have been developed from day to day irrespective
whether its being used or not and at the same time such exploration
plays a crucial role in developing the developed Operating systems
further for effectiveness because at the end of the day new applications
and the betterment of the present working systems is what aimed in any
case. So unknowingly the open source Operating Systems play a vital
role in the development of the Operating Systems.
One such OS is VISOPSYSwhich has been developed since 1997.
It is not much of a user usable OS on a wide scale but yet it can used for
small purposes since all the sub-parts have yet not been implemented.
In this Mini-Project we will be studying the insights of the Open source
Visopsys and will be trying to implement any one area of the
unimplemented part.
Introduction To VISOPSYS:
Visopsys (VISualOPeratingSYStem) is an alternative operating system
for PC-compatible computers, written "from scratch", and developed
primarily by a single hobbyist programmer since late 1997.
Visopsys is free software and the source code is available under the
terms of the GNU General Public License. The libraries and header files
are licensed under the terms of the GNU Lesser General Public License.
The bulk of Visopsys is a fully multitasking, 100% protected mode,
virtual-memory, massively-monolithic-style kernel. Added to this is a
bare-bones C library and a minimal suite of applications together
comprising a small but reasonably functional operating system which
can operate natively in either graphical or text modes. Though it's been
in continuous development for a number of years, realistically the target
audience remains limited to operating system enthusiasts, students, and
assorted other sensation seekers.
Other operating systems can do more than Visopsys; it doesn't include
many applications. Needless to say, it's not as good as Linux or even
SkyOS or Syllable. On the other hand, it's still a one-person project.
Motivation:
When we come across so many open source operating systems, it
obviously enthralls us to explore the insight of such Operating Systems.
In particular Visopsys being the Open source OS developed on Cent-OS
and implementing the coding further on kernel base gives an easy hands
on applicative scenario for us to explore and develop something new.
With addition to it, Visopsys still doesnt have all the implemented parts
though it has most of the basic requirements yet there are few crucial
parts which are yet to be implemented if aimed at broader scenario.
The Core Developer of VisopsysAndy McLaughlina 30-something
programmer originally from Calgary, Canada, who has helped us
during our project with issues which could be developed, which actually
helped us in a great way and gave us exact insight of what to work on
which led us on the major part of our project which will be coming
further in the report.
Project Description:
On insight analysis of the open source codes of Visopsys we have
analyzed few codes such as boot loader and cd loader, file management
codes.
So on many cases have been implemented butINTER PROCESS
COMMUNICATION(IPC) which is one of the most important file
management operation has not yet been developed under Visopsys so the
exploration of IPC would be beneficial in a great way.
Because IPC at some pint when working on kernel and windows base it
is needed, so as said effectiveness is always desired in any case.
Overview of IPC:
Inter process communication (IPC) is the activity of sharing data across
multiple and commonly specialized processes using communication
protocols. Typically, applications using IPC are categorized as clients
and servers, where the client requests data and the server responds to
client requests.Many applications are both clients and servers, as
commonly seen in distributed computing. Methods for achieving IPC are
divided into categories which vary based on software requirements, such
as performance and modularity requirements, and system circumstances,
such as network bandwidth and latency.
There are several reasons for implementing inter-process communication
systems:
Sharing information; for example, web servers use IPC to share web
documents and media with users through a web browser.
ImplementationandAnalysis:
Aswehavealreadymentionedthestyleofwhichthedesignwillbe
underprojectdescriptionaspassingtheobjectsandsomeformofdata
describingwhattheobjectis.Wewillbesharingthesebetweenseparate
executablefilesthatwontbesharingmemorythatsrequestedtobe
mappedintothememoryspaceorbyusingthecallbackmethodalsowe
canpassthedata.
Henceaccordinglywehavedesignedthefollowingcodeasgivenbelow:
Inthiscodewehavealsoaddedthesomekernel(API)callsaswehave
toimplementandembeditintovisopsys.Thewindowevents,usingabit
oflibrarycodethatregisterscallbacks,thenlaunchingaGUIthreadto
pollthekernelfordata(src/lib/libwindow/windowMain.c).Soforsuch
applicativevroaderaspectweillberequiringthisIPCasacritical
element.
9
Challenges:
Whilepursingtheprojectwefacedmanybacklogsaswewerenewto
theOSdevelopmentenvironment,eventhesimpliesttasksappearedto
bedifficultbutlateronaswemovedonslowlyweactullayunderstood
whatishappeningasinhowtheOSoperateswhatarethedifferent
sectionswhichwillhavetoagaincoordinatedtoformanOperating
System.
Sowhileweweregoingthroughtheopensourcecodesitwasnteasyto
understandsoeasilybecausethewholecodeswereunderthelibraryof
visopsyswhichismodifiedversionlibrariesofCentOS.
Sowiththeknowledgeofkernellibrariesandthefunctionalityofthe
particularsourcecodetosomeextentwedidunderstandwhatandhow
exactlytheprogramisrunning.
Somovingon,wemovedontoworkonIPCwhichseemedtobean
interestingareatoexplore.Forthisourworkbecameeasierandeasily
understandablebecauseofANDYthecoredeveloperofVisopsyswho
hashelpedusbygivinginsightofwhatproblemstatementtoworkon
andthenwefollowedaccordinglyandhencewecouldactuallycomeout
withsomegreatideasforIPCtobeimplemented.
Butthecodebeingwrittenonhigherleveli.ekernelandthevisopsys
beingonthelowerlevelcouldntexecuteitinthevisopsysbackground
10
butstillthecodingastheideologyofthewayIPCworksisalmost
correct.
Summary:
Soaswehaveseenandcameacrosssuchanamazingdeveloping
environmentitgaveusalotofencouragementthroughoutthecourse.
Itchangedthewaywethinkandourperceptionstowardsalmost
everything.Finallywehavegonethroughtheimplementedpartofthe
OSandVisopsyswassuccessfullyrunningonVMWaretoo.
TheOSisquiteefficientthoughitseemedalittleimmaturein
appearancebutstilltheefficiencyofcodeswerequiteremarkable.
Overheretheunimplementedparti.etheIPCbeingaveryimportant
functionality,wehavestudiedthevariouspossibleapplicative
possibilitiesofIPCandkeepinginmindthosethingswehavetriedour
besttocomeupwithacodewhichcouldprocessinformationwhen
movedfromkernelbackgroundtowindowsshellbackground,butonly
thingissinceitbeingthehighlevelbackgrounditisintgettingexecuted
onVisopsys.
Thoughwecouldntexecuteitbutstilltheprogrammingandthe
structureoftheIPCcodeiscorrectastothebestofourknowledge.
11
REFERENCES: