Ok, I know I said I'd have more information up about this PXE server, but it's been incredibly awkward and difficult. I think I've found a solution though, instead of using Altiris' Deployment software, I've found some very useful software with the GNU GPL, which means I may be able to pull this off. It needs a little tweaking and it seems more complicated than it actually is.
So here it is, I've currently got my Windows XP system down in the lab. The reason I'm not running in Linux is that I need to have Windows running on this machine at the same time as it is running a licence server for a number of tools we use. Anyway, I downloaded VMplayer.exe, it's free Virtual Machine software which allows you to run an image on openSuse 10.2 (my choice) within a windows environment. Within openSuse, I've installed the PXE server, setup the DHCPd and ATFTP servers and setup the filenames and directories in the /srv/tftp/tftpboot folder. In this folder, I've copied initrd and linux files (32 bit and 64 bit, as an option to boot either) as well as the configured pxelinux.0 file. I'm not going to go into it all now, but so far so good. The board hasn't yet recognised the Linux PXE server. I'm hoping this is actually possible as I'm using the VMPlayer and not a proper installation of Suse. I think this is the last attempt at getting this to work that I'll try. After this, I'm just going to have to get a system all by itself and set it up that way. Sure here goes nothing, I'll keep it posted.
Friday, 6 February 2009
Monday, 2 February 2009
Free Dental checkups??
So I've found out I may be eligible for 2 free dental check ups a year. Conditions are that I've been paying PRSI for the last five years (since I'm over 25, under 25's only need 2 years of PRSI).
Phoned up the Department of Social and Family Affairs on 1890400400, listened to their hold music for ages before I eventually got through to someone. I gave them my PPS number and lo and behold, I'm not eligible! I was told you need 260 weeks of paying PRSI to be eligible, I've only got 235, but they also said they need my P60 from 2008, which means I'm more than likely well over the limit as soon as that is sent in. I love finding out about tax benefits I didn't previously know about, especially since I know I need a filling, my tooth's been killing me for ages now and I just didn't have the funds for it.
I think I'm going to look into more ways of getting my tax money back to me. There's all these benefits that I never knew about, I think it's the tax office dirty little secret that they don't want to admit to. In times like these, every penny is a happy penny in my books :D
Phoned up the Department of Social and Family Affairs on 1890400400, listened to their hold music for ages before I eventually got through to someone. I gave them my PPS number and lo and behold, I'm not eligible! I was told you need 260 weeks of paying PRSI to be eligible, I've only got 235, but they also said they need my P60 from 2008, which means I'm more than likely well over the limit as soon as that is sent in. I love finding out about tax benefits I didn't previously know about, especially since I know I need a filling, my tooth's been killing me for ages now and I just didn't have the funds for it.
I think I'm going to look into more ways of getting my tax money back to me. There's all these benefits that I never knew about, I think it's the tax office dirty little secret that they don't want to admit to. In times like these, every penny is a happy penny in my books :D
Tuesday, 27 January 2009
PXE Boot Server
Right, so my next task is to setup a PXE boot server for one of projects. The reason we're using PXE boot is that on the board, we've no hard drive attached and a network boot seems to be the best and fastest option for booting a number of these boards at the same time using the one PC/Server.
So, what's PXE boot? It's a Preboot Execution Environment (PXE, pronounced 'pixie') which allows the user to boot a computer over a network, usually a LAN (Local Area Network), independently of a hard drive or operating system.
-Update: I've been working on trying to get this PXE server up and going for a couple of days now, I've made progress but I'm stuck at trying to get an operating system booted on the motherboard. This is driving me mad. Firstly I was trying to get an image of Windows (any version), but now I've found I need to boot up using linux. This should be pretty easy and straight forward. However, I seem to be missing one or two key parts of the PXE boot process and the program I'm using doesn't give me all the access I need to make the necessary changes. I may have to change what program I'm using.
Here's a quick run-down. I'm using Windows Deployment Services (WDS). MSSQL is needed to install this. This can be installed in the setup menu of WDS by clickin on install third party software. This will connect to the website and download the best matching version. The WDS includes a PXE Boot configuration tool, Boot Disk Creator, Rapid Install Utility and the Deployment Services Console. Within the Console, I should be able to schedule an Initial Deployment (for first time installations) and load an OS from there. Unfortunately all my options seem to point at installing an OS on the local hard drive. I can't do this. I've got a motherboard thats connnected to our network and has a monitor on it. This is all the access I'm allowed to have and this is all I should need. I need to have the motherboard boot using PXE boot into a Linux environment across a networked installation on a remote hard drive. How hard can that be? It ain't hard, it's just awkward.
Did I mention the computer I have to work off of, is currently a licence server for another application here in the building and has to be running Windows for it to work. So goodbye to the easier option of doing it all through Linux.
Did I mention, I've chosen Suse 10.0 or 10.2 (not quite sure which on yet) as this seems to be the popular one here for the company and most people know it. I know there's a dozen other distributions and I should check them out but for keeping things simple, this is probably the best solution.
So right now, my motherboard gets an IP address from our DHCP server, boots from the PXE server, loads Bootworks, loads a DOS image and then throws me into command prompt. So far, so good. I should be able to get this to work, I'm only a step or two off. I just need to find out what I do next.
I'll give a proper rundown of how it works, when I get it to work, for the moment, this is only a log.
So, what's PXE boot? It's a Preboot Execution Environment (PXE, pronounced 'pixie') which allows the user to boot a computer over a network, usually a LAN (Local Area Network), independently of a hard drive or operating system.
-Update: I've been working on trying to get this PXE server up and going for a couple of days now, I've made progress but I'm stuck at trying to get an operating system booted on the motherboard. This is driving me mad. Firstly I was trying to get an image of Windows (any version), but now I've found I need to boot up using linux. This should be pretty easy and straight forward. However, I seem to be missing one or two key parts of the PXE boot process and the program I'm using doesn't give me all the access I need to make the necessary changes. I may have to change what program I'm using.
Here's a quick run-down. I'm using Windows Deployment Services (WDS). MSSQL is needed to install this. This can be installed in the setup menu of WDS by clickin on install third party software. This will connect to the website and download the best matching version. The WDS includes a PXE Boot configuration tool, Boot Disk Creator, Rapid Install Utility and the Deployment Services Console. Within the Console, I should be able to schedule an Initial Deployment (for first time installations) and load an OS from there. Unfortunately all my options seem to point at installing an OS on the local hard drive. I can't do this. I've got a motherboard thats connnected to our network and has a monitor on it. This is all the access I'm allowed to have and this is all I should need. I need to have the motherboard boot using PXE boot into a Linux environment across a networked installation on a remote hard drive. How hard can that be? It ain't hard, it's just awkward.
Did I mention the computer I have to work off of, is currently a licence server for another application here in the building and has to be running Windows for it to work. So goodbye to the easier option of doing it all through Linux.
Did I mention, I've chosen Suse 10.0 or 10.2 (not quite sure which on yet) as this seems to be the popular one here for the company and most people know it. I know there's a dozen other distributions and I should check them out but for keeping things simple, this is probably the best solution.
So right now, my motherboard gets an IP address from our DHCP server, boots from the PXE server, loads Bootworks, loads a DOS image and then throws me into command prompt. So far, so good. I should be able to get this to work, I'm only a step or two off. I just need to find out what I do next.
I'll give a proper rundown of how it works, when I get it to work, for the moment, this is only a log.
Friday, 23 January 2009
22km ski run on the Vallée Blanche
I've spent the last week here in Chamonix in Chalet Chocolat. It's been an amazing and tough week. My legs are just like jelly now, they've been put through their runs over the last few days. But I have to admit, I think it was the 22km off piste run on the Vallée Blanche yesterday that did me in and has me sitting in the chalet all day today. It was incredible though. We hired a snowboarding guide to guide us through the glacier and all the crevasses. Apparently about 10 people die each year trying to get through the glacier. I'm glad we took the safe route and hired a guide.
The scenery was magnificent and I took a load of photos. It was incredible. I'm hoping to have some photos up on my facebook for most of it.
Right, I'm off back to chilling like a villain in this beautiful chalet.
The scenery was magnificent and I took a load of photos. It was incredible. I'm hoping to have some photos up on my facebook for most of it.
Right, I'm off back to chilling like a villain in this beautiful chalet.
Thursday, 15 January 2009
The PN Junction
The PN junction is the most basic junction type. But this is the basis of how diode's work and in a more complicated fashion, the basis of how transistors work.
But before we start with that, maybe a little bit of theory first. I'm going to start with the difference between a conductor, a semiconductor and an insulator. The theory behind all this is very deep and often not necessary to know. Ignoring a lot of the background theory, when looking at the atomic structure of a silicon crystal, energy levels can be detected. There are many of these levels, but as engineers, we're only interested in two, the Valence and the Conductive bands. Now electrons need to move between these bands for current to flow. In a conductor, these electrons move more freely than in an inductor. The difference is measured in the difficulty it takes in moving one electron from the Valence band to the Conduction band.
This is measured in electron Volts (1eV is equal to 1.9 x 10^-19 Joules). Joules is the unit of energy, for example, there are 2000 Joules in a mars bar, which is 478 calories.
Back to the bands, in an inductor, the difficulty in moving the electron from one to the other is typically greater than 5eV. For Semiconductors, this is ranges from 0.5eV to 3eV. Obviously conductors offer very little resistance and are less than 0.5eV. Three common materials used for semiconductor material is:
Silicon (Si): Eg = 1.1eV
Geranium (Ge): Eg = 0.7eV
Gallium Arsenide (GaAs): Eg = 1.3eV
Silicon is of course the most popular of these three as it has a reasonable bandgap and is easy to manufacture in large quantities with sufficient purity. Gallium Arsenide is particularly useful in high speed devices and military applications.
With this theory in mind, I can now explain p-type semiconductors and an-type semiconductors. Put them together, what have you got? That's right, a PN junction.
In a process involving adding impurities to the above materials, called doping, we add either arsenic or phosphorous to the semiconductor material. These parts will be added in the ratio 1:10,000,000 to 1:1,000,000,000, so you can imagine how precise they have to be (think of the lads in the bunny suits in the Intel manufacturing plant, thats what they do!). So an n-type semiconductor is negative as it has extra electrons, a p-type is positive as it has extra electron holes. Since electrons have negative polarity, this should make sense.
Putting these two types together, you will see the free electrons in the n-type flow to the electron holes in the p-type and similarly, electron holes in the p-type will flow to the n-type, causing what's called a depletion region. For current to flow through this depletion region, a minimum of 0.7V (for silicon devices) is needed to bridge the gap. This gives the effect of pushing the electron up a hill into a higher energy level.
In a diode, because of this PN junction, one side being positive and the other negative, this means that current will only flow in one direction. For the current to flow through, the diode must be put in the right way, this is called Forward Biasing. The inverse is called Reverse Biasing, where no current will flow. Now obviously, when it is reverse biased, current will flow, if you apply an excessive amount of voltage, this is called the breakdown voltage, where the device simply melts and becomes a short circuit.
I think I'll leave it at that for the moment, I don't really want to get bogged down in theory here. Will try and write up Transistors (PNP and NPN junctions) next as they follow on from this topic.
But before we start with that, maybe a little bit of theory first. I'm going to start with the difference between a conductor, a semiconductor and an insulator. The theory behind all this is very deep and often not necessary to know. Ignoring a lot of the background theory, when looking at the atomic structure of a silicon crystal, energy levels can be detected. There are many of these levels, but as engineers, we're only interested in two, the Valence and the Conductive bands. Now electrons need to move between these bands for current to flow. In a conductor, these electrons move more freely than in an inductor. The difference is measured in the difficulty it takes in moving one electron from the Valence band to the Conduction band.
This is measured in electron Volts (1eV is equal to 1.9 x 10^-19 Joules). Joules is the unit of energy, for example, there are 2000 Joules in a mars bar, which is 478 calories.
Back to the bands, in an inductor, the difficulty in moving the electron from one to the other is typically greater than 5eV. For Semiconductors, this is ranges from 0.5eV to 3eV. Obviously conductors offer very little resistance and are less than 0.5eV. Three common materials used for semiconductor material is:
Silicon (Si): Eg = 1.1eV
Geranium (Ge): Eg = 0.7eV
Gallium Arsenide (GaAs): Eg = 1.3eV
Silicon is of course the most popular of these three as it has a reasonable bandgap and is easy to manufacture in large quantities with sufficient purity. Gallium Arsenide is particularly useful in high speed devices and military applications.
With this theory in mind, I can now explain p-type semiconductors and an-type semiconductors. Put them together, what have you got? That's right, a PN junction.
In a process involving adding impurities to the above materials, called doping, we add either arsenic or phosphorous to the semiconductor material. These parts will be added in the ratio 1:10,000,000 to 1:1,000,000,000, so you can imagine how precise they have to be (think of the lads in the bunny suits in the Intel manufacturing plant, thats what they do!). So an n-type semiconductor is negative as it has extra electrons, a p-type is positive as it has extra electron holes. Since electrons have negative polarity, this should make sense.
Putting these two types together, you will see the free electrons in the n-type flow to the electron holes in the p-type and similarly, electron holes in the p-type will flow to the n-type, causing what's called a depletion region. For current to flow through this depletion region, a minimum of 0.7V (for silicon devices) is needed to bridge the gap. This gives the effect of pushing the electron up a hill into a higher energy level.
In a diode, because of this PN junction, one side being positive and the other negative, this means that current will only flow in one direction. For the current to flow through, the diode must be put in the right way, this is called Forward Biasing. The inverse is called Reverse Biasing, where no current will flow. Now obviously, when it is reverse biased, current will flow, if you apply an excessive amount of voltage, this is called the breakdown voltage, where the device simply melts and becomes a short circuit.
I think I'll leave it at that for the moment, I don't really want to get bogged down in theory here. Will try and write up Transistors (PNP and NPN junctions) next as they follow on from this topic.
Revising the basics
Back to basics, god it's been a long time, but it's good to throw out a few basics just to refresh. How basic should I go? Lets go mad, back to the super easy basics. Assuming Passive conventions, here's some basic laws.
Ohm's Law: v = Ri
Voltage Source: v = Vs
Current Source: i = Is
Capacitor: i = C (dv/dt)
Inductor: v = L (di/dt)
Kirchhoff's Current Law (KCL): Sum of all currents on a node, with appropriate sign is zero.
Kirchhoff's Voltage Law (KVL): Sum of all voltages around a loop, with appropriate sign is zero.
Power dissipated when vi > 0
Power genereated when vi < 0
Power: P = vi
Energy stored in Capacitor: E = 1/2(Cv^2)
Energy stored in Inductor: E = 1/2(Li^2)
Where, v = voltage, R = resistance, i = current, C = capacitance, L = inductance, P = power and E = energy.
That's just a small refresher. I could go into transfer functions and testing for linearity and some possible equations, but that's way too complicated to show here without diagrams.
Ohm's Law: v = Ri
Voltage Source: v = Vs
Current Source: i = Is
Capacitor: i = C (dv/dt)
Inductor: v = L (di/dt)
Kirchhoff's Current Law (KCL): Sum of all currents on a node, with appropriate sign is zero.
Kirchhoff's Voltage Law (KVL): Sum of all voltages around a loop, with appropriate sign is zero.
Power dissipated when vi > 0
Power genereated when vi < 0
Power: P = vi
Energy stored in Capacitor: E = 1/2(Cv^2)
Energy stored in Inductor: E = 1/2(Li^2)
Where, v = voltage, R = resistance, i = current, C = capacitance, L = inductance, P = power and E = energy.
That's just a small refresher. I could go into transfer functions and testing for linearity and some possible equations, but that's way too complicated to show here without diagrams.
Wednesday, 14 January 2009
Ubuntu
I've finally done it, I've installed Ubuntu on my home system. My Dad had just installed it on his little Atom system so I decided now would be a good time to get back into it again. The only difference between the two distributions is that mine is the 64bit version and my Dad's is the 32bit version. So I'm planning to see how much difference there is between the two versions and if I get much performance out of it.
Just a quick run over of Ubuntu. Ubuntu is an operating system based on the Debian/Linux distribution. The word itself, is a zulu word meaning 'humanity', which relates to the ubuntu philosophy "I am who I am because of those around me". It's free and open source software, meaning users are free to run, copy, distribute, study, change and improve the software under the terms of the GNU GPL licence.
Anyways I'm hoping to get more into programming again and get more involved in what linux has to offer. So far, I've installed the main distribution and made the recommended updates. The main problems I've had so far have been trying to update the drivers for my graphics card and my sound card. I've got an nVidia GeForce 8800 graphics card and a Creative Sound Blaster X-Fi sound card. Both companies provide Linux drivers that should work. After downloading nVidia's drivers off their website, I proceded to try and install it all, their method is an awkward one, until I found the Synaptic program within Ubuntu which would do the installation for me without any problems. Using glxgears I was able to confirm that the fps went from 433fps to 6800fps which is a signiifcant increase. Now glxgears isn't the best benchmarking tool, but it'll do for the moment, I'll get better tools as I progress.
I thought the sound card was an easy one to install. I downloaded the drivers off Creative's website and installed it as instructed. Then I simply changed the sound settings in Ubuntu to output to my sound card instead of the on-board sound card. This worked straight away. However, after a reboot, it doesn't work, so I've done something wrong somewhere, I just need to figure out what's going on. Looks like I've plenty to learn and plenty to write up about on my way.
For now I want to learn more about Synaptic, it sure beats apt-get for updating and installing new software/drivers.
Just a quick run over of Ubuntu. Ubuntu is an operating system based on the Debian/Linux distribution. The word itself, is a zulu word meaning 'humanity', which relates to the ubuntu philosophy "I am who I am because of those around me". It's free and open source software, meaning users are free to run, copy, distribute, study, change and improve the software under the terms of the GNU GPL licence.
Anyways I'm hoping to get more into programming again and get more involved in what linux has to offer. So far, I've installed the main distribution and made the recommended updates. The main problems I've had so far have been trying to update the drivers for my graphics card and my sound card. I've got an nVidia GeForce 8800 graphics card and a Creative Sound Blaster X-Fi sound card. Both companies provide Linux drivers that should work. After downloading nVidia's drivers off their website, I proceded to try and install it all, their method is an awkward one, until I found the Synaptic program within Ubuntu which would do the installation for me without any problems. Using glxgears I was able to confirm that the fps went from 433fps to 6800fps which is a signiifcant increase. Now glxgears isn't the best benchmarking tool, but it'll do for the moment, I'll get better tools as I progress.
I thought the sound card was an easy one to install. I downloaded the drivers off Creative's website and installed it as instructed. Then I simply changed the sound settings in Ubuntu to output to my sound card instead of the on-board sound card. This worked straight away. However, after a reboot, it doesn't work, so I've done something wrong somewhere, I just need to figure out what's going on. Looks like I've plenty to learn and plenty to write up about on my way.
For now I want to learn more about Synaptic, it sure beats apt-get for updating and installing new software/drivers.
Subscribe to:
Posts (Atom)