Friday, January 25, 2013

Is this the correct course to take if I want to create my own OS?

Q. Introduction to Linux
Provides a technical overview of the Linux operating system, providing hands-on experiencce with commands and files. Students explore the basic structure, functions, and tools of the Linux Operating System. Topics include basic Linux commands, files, and directories, text editing, pipes and filters, shell environment, and scripting. This is one of two courses required for students wishing to pursue the Linux+ industry certification.

A. Directly - no. This is basic course for Linux administration, that is not even very deep. However, it might provide useful fundamentals later on.
To create OS you need a plan.
1. Defining target platform for OS: will it be mobile devices, computers ( highly unadvisable, except if you have lots of money to fund application developers), other hand-helds, embedded "intelligent" devices, etc.
2. Learning Fundamentals of OS'es : Linux would be good choice, but you need to understand how other OSes work. That course above would help.
3. Learning in-depth about OS architecture of at least one OS
4. Learning about hardware architecture of your favorite platform.
5. Learning programming languages. C/C++ is a must, some knowledge of Assembler might be necessary too (despite rumours, most of OS programming is done in higher level language than assembler).
6. Learn about requirements of your future users.
7. start coding
8. Fail and repeat 3,4,5,6,7 till success.

How long does it take to learn linux?
Q. I know basic commands but how long does it take to learn more aka improve.. any source? thanks
i meant shell script

A. Once you are running a Linux distribution such as Ubuntu, which can be installed in its own partition, embedded within Windows, or simply run entirely from a CD, you have the choice of running applications that use a Graphics User Interface or opening a terminal and running commands from the command line.

GUI applications operate in a manner similar to the way Windows runs GUI applications. However, command line operations on Linux tend to be significantly different from DOS style commands. Not only are the command names different, but the Linux commands often do a lot more than the DOS equivalents. For example, 'dir' in DOS is 'ls' in Linux; and 'type' in DOS is 'cat' in Linux. 'ls' can take a lot of switches that modify how the output appears; and 'cat' can list the contents of multiple files.

For command line (shell script) work, then you need to study the syntax of your chosen shell. Manual pages such as:

man ksh
or
man bash

should tell you the features of the shell itself. How to reference single files and groups of files using wild cards; how to direct input into a command from a file and output from a program to a file or as input to another program. How to run programs in the background.

In Linux, there are far more commands available than are normally found as DOS commands. Finding commands is achieved using the -k switch to the 'man' manual listing command:

man -k reference

where reference is a word that describes what you might want to do. The 'man -k' command will list the commands related to the reference word you have chosen, with a single line description of the command. Then you can look at the specific man page for each command that is relevant.

For example, if you wanted to make a single file that contains the contents of every file in a sub-directory that contains the word Linux. Then the command could be:

cat `grep -l Linux subfolder/*` >output_file

grep searches files for the occurrence of the word Linux. The -l (lower case L) means that grep will just list the file names, not the lines of the files containing Linux. Enclosing the grep command in back quotes causes this command to run with its output supplied as parameters to the cat command. The cat command reproduces the contents of the files it is given as parameters. The > causes the output of the cat command to be redirected into the specified file.

cat `grep -l Linux subfolder/*` | grep Ubuntu >output_file

This command line saves only those lines that contain the word Ubuntu from the files that include the word Linux. Linux and Ubuntu do not have to be in the same line of the file.

The best way of learning all these things is to try them yourself.

I started working with UNIX command lines nearly 30 years ago. Within a week, I was producing working scripts, but I was still learning some new things 25 years later. Progress has slowed for me in the last few years since I retired from work and Linux became just one of a number of hobbies for me. Look at some of the simpler shell scripts in Linux and work out what they are doing and how they work, then try writing some of your own.

I hope this helps.

Generally, what are the most commonly used programming languages?
Q. I know my way around Python and Visual Basic. That's about it. I also know some about the Linux command line, especially in Ubuntu context.

Can anyone help me to determine, what are the next several languages I should concern myself with studying?

A. It really shouldn't matter what languages you learn. What's really important is that you learn the patterns and data structures that span all languages. Once you do this, you'll pick up any language in about a couple weeks with no problem. As far as resume building is concerned, I would feel completely confident in landing a development job anywhere with C/C++ skills and a web job with PHP/SQL skills. Generally, C++ is so versatile because you don't have to rely on the underlying runtime frameworks (JRE for java, and .NET for VB/C#) that many companies try to avoid.

Saying that, Java is also a good one to dabble in if you haven't already, though I would not steer too clear of learning how do deal with memory in C/C++.

It's good you know Python, though you'll definitely need a more powerful language if your going to be serious about a career in software.

Get to know how to build makefiles and construct classes and such in C++ on ubuntu. Get to know how to do everything with a command prompt and vi. Once you understand all of this, you become much more powerful as a developer in general.



Nec Projector Review

Plastic Shed Reviews

Ati Graphic Reviews

Nurse Uniforms Reviews

Cabochons Reviews

Inflatable Water Slides Reviews

Barcode Scanner Reviews

No comments:

Post a Comment