Archive for May, 2010

Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

How to Start Your Career in System Programming

By Raghu Bharadwaj

If you are a fresher and are really looking for a personally and professionally satisfying career in embedded systems or system level programming then these are the exact skills that you need to get hold of

Skill guide for System/Embedded/Real Time Programmers

•Effectively programming using Data Structures

•Application of C for System programming purposes

•Complete understanding of any Operating System (Linux, most widely used here)

•OS customization skills, Device Drivers, Embedded Drivers

•OS building for target hardware

•Network programming

•C++ for Embedded and Real Time programming

•Understanding finer aspects of Real Time OS designs

•Programming for Multicore architectures

•Above all true passion for hard core programming

The above guide is purely indicative and is based on the current and expected future skill requirements. However these are the skills which are going to stay for a very long time. I call them “skills forever”. Most of these skills are age old and are proven effective time and again with minor modifications to meet moving requirements.

How to master these skills

Here I recommend three proven ways to master these skills

1. Self Learning

Go out and do it on your own, this is the mantra of self-learning, definitely, the most satisfying path of all the. With so much open information available self-learning is definitely recommended. A decade back may be it would have been ill advised, due to lack of information available through Internet, books and so on, but the current situation only augments the use of it.

Pros & Cons

This is indeed the most satisfying of all paths. Information is readily available and it is only left to you to explore and deduce the right information. Now students willing to walk this path should be very selective in choosing information as there are every possibility that he/she may end up with heavy unwanted or even misleading information and most importantly taking much of his time. To sum it up I would say that in this path the learning curve i.e. the time taken to learn is more compared to all other kinds of learning.

Sources for this style of learning are: internet, books, practical experimentation, technical forums, seminars and so on.

2. Mentoring/Professional Training Course

To put it in a single sentence, “Look for a mentor/trainer who can extend his expertise and help you build your skills in the smartest and shortest way”. Definitely the most widely preferred channel of learning and also the most confusing, thanks to the ever growing number of training organizations offering a wide variety of courses. I certainly am not against this trend but I would only like to caution students on being very selective while choosing these organizations for building their skills.

Let us look at some of the common training programs available for Embedded/System software development

There are a growing number of institutions offering specialized training courses on this domain. Most of these institutions offer a similar line of course contents with minor deviations. However most of them do talk about:

•Programming with C and Data Structures

•Programming with C++

•Linux/Unix Essentials

•Some part of Linux Drivers

•Micro-controllers and Programming them

•Embedded Systems Concepts

•RTOS

Now if you compare this with the above mentioned Skill guide, surely most of the training organizations need to drastically improve their contents to cater the exact skill requirements of the students and mind you most of these institutions are delivering these courses just at the knowledge gaining level. So be extremely selective in choosing your training courses. This is a highly recommended source of learning as there are plenty of options to choose from, obviously with a bit of scrutiny.

3. On Job Training

Definitely the most preferred method of learning. This gives the student a great opportunity to be in the company of experts and also in the most conducive learning environment. The student who enters this course would develop his/her skills in a way which is most desired by his/her employer. This could help in building both generic as well as specific skills. However there is a good chance of being very specific in the skills gained and this may hamper his overall generic outlook.

Now it’s your turn to choose

So the choices are open, rate your skills and choose any path or even try to come up with something of your own. Just remember that, our expertise can always be availed and we will be more than happy to help you.

Raghu Bharadwaj is a lead trainer in the area of Linux System Programming, including Linux Device Drivers, Kernel Programming, Embedded Linux, RTOS and Network Programming etc. To know more about his online and campus based training programs visit http://www.techveda.org.

Tags: ,
Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

Which Low Resource Linux Distribution Should You Use For Your Old Computer?

By Herb Leibacher

If you have an old machine that no longer has an operating system, you don’t have to throw that machine away. You can put it to good use with an operating system that doesn’t require a fast processor or big disk drive. Fortunately there are plenty of Linux distributions that will work on your old hardware and run at fairly moderate speeds even if your machine is really old. There are quite a few Linux distributions that don’t demand too much resources so that your computer will run relatively fast.

First of all, you need to stay away from distributions that use Gnome and KDE. These tend to use too many resources for old hardware and will cause the machine to lag way too much for basic applications. Look for these distributions that don’t use these graphical interfaces.

These low resource distributions are all based on Ubuntu meaning that you have access to all the debian packages that Canonical supports giving you access to tons of software.

Xubuntu is a quality distribution that doesn’t use too much power. It’s uses XFCE which will help with slower computers. This one does work well but might not be best for very, very old machines as XFCE is a bit more demanding than some other low power interfaces. This will be a bit easier because it’s basic interface works a lot like Windows which most people will be used to.

Linux Mint 6 Fluxbox Community Edition is a very high quality low resource distribution. This uses Fluxbox which will work better with computers that can’t run Xubuntu too well. This distribution has all your basic essentials. It’s layout will take a little while to get used to. Instead of a start button, you have to right click on the desktop to open your applications.

MoonOS LXDE is another good one to try. This uses LXDE which hardly uses any ram to actively run. Typically you can download LXDE but MoonOS has it all set up for you already after installing so that nothing has to be set up.

By following these tips you may be able to put an old machine to good use.

Herb likes to get the most possible use out of the technology he has on hand. Please check out his website with information on kids toy storage and details on childrens toy boxes.

Learn what you really needs to pass real test with testking 642-982 dumps. We provide up to date testking 646-985 study guide and testking HP0-S25 to help you pass real exam in first attempt.

Tags: , ,
Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

The Uses of Cron Tabs

By Hans Christian Tesch

Those who are familiar with Greek methodology will no doubt know Cronus who was the father of the Olympian gods. Kronus in Greek and roman times means time and thus here we get the words chronometer and chronology. Therefore cron tabs in programmer lingo means something tat deals with time.

Cron tabs are mostly seen in server side applications particularly in open source systems such as Red Hat and Linux systems. The subroutine command of the cron tab is set and used for timed routines or tasks that the server does on a regular basis. That is it acts like a timer for a certain procedure to be done at a set time during the day.

Thus this tab can have several subroutines within it. Cron tab is basically a short cut for Cron Table wherein certain tasks are assigned. Many benefits of these tabs are seen when used in terms of scheduling certain tasks at inopportune times of the day, which can be on holidays and ungodly hours of the night.

The Benefits

The benefits of this type of server side programming are numerous. For example, part of your services entails that you send an email to your subscribers updating them on certain information for the day and reminders and such every 3 am in the morning. Thus you can do two things.

First you can set your alarm clock at 3 am in the morning and manually send these emails one by one to your subscribers. Definitely this is not a very attractive proposition. The other thing you can do is to set a cron tab in your server to do this for you while you sleep at that time.

The tab in this case will set into a gear a process that will automatically send emails to everyone in your client list for as many times as you want for the next day, next month or even the next few years! The cron tab will do the most necessary routine things for you just in case you forget to do them.

You can also use the command in conjunction with other disk operating commands such as erase and delete. For example you may want to delete members from your site or forum that have lapsed a minimum on-line period, that is they have become inactive and thus you can purge them. So say that forum members will be expelled if they have a lapse of 1 week of posting or logging in, this command can do it for you automatically without you having to do it manually.

How to activate

The cron tab can be activated in your server just by looking for a cron tab icon in the control panel. It is just a matter of clicking on it and adding the timed commands that you need. You can do this for the most routine of tasks whether deleting or sending mail and others. You can also set a frequency for this to do daily, weekly, monthly or even annually. The choice is entirely up to you.

Tags:
Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

How to Solve Zero Length File Problem in Linux’s Ext4 File System

By Tom Patrick

The ext4 (fourth extended) is a journaled file system of Linux that has many benefits compared to its predecessors, such as support for backward compatibility, large file system, delayed allocation, etc. However, the delayed allocation feature sometimes poses problems for the Linux system. The Linux system based on ext4 file system may encounter inconsistencies in the files in case of a power surge. To overcome this behavior, you should take appropriate corrective measures. However, if no method employed by you is successful then you should use a third-party Linux recovery software to do the needful.

Consider a scenario wherein you are working on a Linux system. Suddenly, there is a power loss and the system shuts down abruptly. When the power is restored, you switch on the system and find that the files that you created just before the crash are showing zero bytes.

Cause:

The most possible cause for such behavior is the delayed allocation feature. What happens is when a file is closed after creation, the data blocks are allocated for the file after a minute or so. Because of this, the metadata of the modified file will show zero bytes as its size. The data allocation is done after the delayed allocation is over. Hence, in the case of a power surge the new file is considered as an empty file.

Resolution:

To resolve the issue, you can use the following methods:

Mounting the file system using “data write-back”

Using three patches designed for ext4 file system: The three patches (bf1b69c0, f32b730a, and 8411e347) enforce any file with delayed allocation will be allocated immediately when a file is created.

Mount the ext4 file system with the nodealloc mount option

Mount the system with the data=alloc-on-commit option: This would ensure that all blocks that had delayed allocation would be allocated and moved to disk before a commit takes place.

However, if you still are not able to recover the lost files then you should use a third-party Linux recovery software to perform data recovery for Linux system. Such read-only tools are able to recover lost data without overwriting the original data.

Tom Patrick is a magazine editor currently researching on linux recovery

Save a big deal on real exam with testking 650-393 course. Join testking 70-685 online training program and get certified testking 642-681 products to prepare and pass real exam on first try.

Tags: , ,
Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

Web Hosting and Technology

By James Koh

One of the more common things about the whole web hosting is that there is a lot of technology that is behind it and this is one of the things that you need to be looking at when you are trying to choose a web hosting company. This is the most important thing that you need to look at, what kind of horsepower is going to be placed under the whole bonnet of your online experience?

Whether or not you need something that is small or something that is really large, all you need to look at is not only how much power is going to be placed there, but also the kind of quality that you need to be looking at as well. Technology and web hosting is actually something of a good partnership – something that is unavoidable in this industry, and the thing you need to be looking at is the server.

The server is really in all, a networked machine that is a lot like a desktop PC, only more powerful. In fact, the server would need to be plenty more powerful and this is because of the fact that sometimes, a single server has to power a few websites and this can run up to the scale of a hundred or even a few hundred websites – if this is a shared server hosting service that you have signed up on. One thing that you need to know is that there are plenty of servers out there, and how they are set up would determine the price you are paying for.

For one thing, a server would normally have a multi chip layout, which would mean that it has several chips daisy chained within the motherboard to make the server fast. RAM and virtual memory are also very important factors in the whole game, because of the massive amount of data that would be coming in and out of the server. There is also the whole concept of the network server, which is the core of the machine, and the machine would need to have a speedy networked that can far exceed the normal 1000MBPS Ethernet cards that you get on normal desktops.

It would also need to have an internal switch board with plenty of network interfaces, supporting a variety of OS’s. Normally, a server is usually WINDOWS or LINUX based, and this is because of their reliability and their efficiency. These are some of the aspects of the kind of technology and software that you might come to expect when it comes to the whole game of servers and web hosting. This is also the checklist you need to know – having some sort of industry knowledge will really help you to choose and make a correct choice of the companies as well as the sort of hardware you might want to need for the kind of services that you are going to be using online. With this information on hand, your web hosting experience would go by just that little bit smoother.

Vodien Internet Solutions provides all-in-one web hosting packages. Find out more details about their Singapore web hosting packages at their website.

Tags: , ,

Introducing Miley Smiley!

Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

Miley Smiley

Tags: , , ,
Submit to StumbleUponDigg ThisShare on TwitterSave on Delicious

5 Tips to Help You Have Great Skype Calls

By Meghan Burton

Are you having some trouble with popular VoIP program Skype but you have no idea how to fix it? If you’re not entirely tech savvy, you may be struggling and tempted to give up on it before you’ve even begun. Don’t worry! Here are solutions to five common problems. These are all easy solutions that anyone can understand and implement.

1. Bad Call Quality

The most common cause of poor call quality on Skype is when two users are running different versions of the program. The codecs will not be compatible which leads to echoing, lost voice packets, and general difficulty. It’s easy to fix this; each of you needs to update your own program. Just navigate to the main website and download the newest version. Alternatively, you could click on “Help” and “Check for Updates” in the Skype menu. If that option greys out, there are no updates. If there are, the program will guide you through installation of them.

After installation, check to see if the situation has improved. Skype is regularly improving on its codecs and you should always update for the latest one.

2. Call Quality Fluctuates Even After Updates

Check your internet quality. Are you doing something else online, like downloading or uploading a large file? Do you have a very low speed connection to the internet? These issues can combine to lower your call quality. Unfortunately if your internet speed fluctuates, there’s nothing you can do, but you can try not to download or upload files while you are chatting on Skype. This includes browsing large websites that may have excessive use of flash.

3. Webcam Picture Is Blurry

If your webcam looks dark, check that it’s securely connected to your computer and installed properly. Try opening it in its native program (after closing Skype) and troubleshooting from there first because that program may recognize more issues than Skype will. Turn more lights on so that the lighting is more central. Very few webcams will provide good quality video in a video call, but you can improve it with even, bright lighting.

4. Webcam Isn’t Working at All

First, check that Skype is recognizing your video. Go to Tools, Options, and then choose Video Settings under “General”. You should see an image of yourself. If you don’t, first check that no other program is using your video. You won’t be able to do both. If it still doesn’t work, again ensure that your version of Skype is fully updated. Update your webcam drivers by going to your manufacturer’s website and downloading new ones for your model. Sometimes older webcams struggle with Skype.

5. How Do I Block Someone?

Just like any instant messaging type service, Skype unfortunately has its fair share of spammers. If you receive inappropriate message or invitations to video calls, you naturally want to take the next step and block those users from accessing you again. Blocking is easy. Just right-click on the person’s name from the instant message or the call and choose “block this person” from the menu.

If you’re having a lot of problems or you simply don’t want others to view when you’re on Skype, you can also go invisible. This will mean that only you can initiate calls and instant messaging conversations because everyone else will see you as logged out. In order to do this, click on Skype at the top, then hover over online status. Invisible should be one of the options.

The Skype website is a fantastic place to investigate if you have more tech knowledge or are having a different problem. I hope these tips helped!

Meghan Burton is a professional copywriter. She recommends Octavia IT Services for business VoIP phone systems.

Tags: ,
Back to top