Jun 28

Today, I received a nice email from Martin Varsavsky of FON, telling me that they have activated the Bills mode. This means that, in theory, you can resell your excess bandwidth to other users via your WiFi router, sharing the generated revenue with FON. People passing by can open their laptop, connect to your signal, and purchase access packs for $5 $3 $2 or 2$ a day – yes, the revenue model has been changing that much over the last few weeks.

In theory I say, since many ISPs have very restrictive terms in the service contracts you sign with them, some in the US even going as far as classifying sharing your broadband with others as a federal crime. So, one of the first items in FON’s Ts&Cs is that you must have your ISP’s permission to resell your broadband. So far, very few ISPs have signed up for this sharing model, one being Jazztel, a company started by Martin himself.

The email also states, this time in size 8 font, lest anyone notice it, the following:

“We would like to inform you that from now on it will be FON WIRELESS, LTD., the entity providing the Service, instead of FON TECHNOLOGY, S.L., and that we have made some minor changes to the Terms and Conditions”

The new Terms and Conditions [PDF] are a further developed version, no doubt washed down with plenty of lawyer juice. The point that most interests me is section 6.6, where the contract states that “As a Linus or Bill, you agree to keep the FON Hotspot active during 24 hours 7 days a week in order for the other Linuses and Aliens to be able to connect thereto.” Additionally, FON USA’s shopping conditions state that you have to keep the router active for one year.

So, apart from FON, who are the big winners? The ISPs of course! Martin was right in saying that FON is good for ISPs, as they are forcing FON members to keep their routers online all year round. Nowhere in the contract one can find what the penalty for not complying is, but some posts suggest they will charge you around $50 to cover the cost of the router they sent for $5.

The only way that you can prove to Fon that your hotspot is active is by allowing the router to phone home on a regular basis, which means that you must have a broadband connection with an ISP for this to happen. If you cancel your broadband, you will automatically violate FON’s terms, and thus be liable to whatever charge they want to levy. Fair?

Jun 16

Since I first started tinkering with the Linksys WRT54G router a couple over a year ago, replacing the stock firmware with OpenWRT, I have been thinking about making something special with it.

The router itself is a great piece of hardware, having a WiFi adapter, and two wired LAN interfaces. OpenWRT allows hackers to do almost anything with the device – there are plenty of mods, such as the dual serial ports, SD card to add storage space, and more.

I tried to look for a GSM/GPRS mod, which would add a module to the router, allowing it to communicate with the outside world using data and SMS – but there was no such thing, at least integrated into the router’s casing. So, the challenge was born, to design a PCB that would hold an SD card reader, a GSM/GPRS engine, and a GPS receiver. What could you do with this device? Here is a short list:

  • An autonomous wireless IDS with logging and SMS alerts. This could warn you when a pirate is trying to break into your network via WiFi. It would be completely autonomous, only needing a power source to run.
  • Self-contained wardriving box, which can save logs to the SD card, and be controlled via SMS messages. It could also periodically send you a status report to your mobile phone.
  • Mobile hotspot – by bridging the GPRS data connection to the WiFi signal in AP mode. Not very fast, but wait until 3G modules come out…

Here is a first picture of the PCB mounted onto the WRT54G. It doesn’t show the mess of cables that covers it, but gives an idea of what it will look like.

Jun 13

So, my new 17″ MacBook Pro has been delivered today by TNT, curiously one day late, as Apple shipped it with…no address. Still, I’m very happy. I hope the date is not a premonition, as Tuesday 13ths are as unlucky as Friday 13ths in english-speaking countries…but I digress.

The laptop looks fantastic. From the moment you take the box out of the wrapping, you realise you’re in for a different experience – this is my first Mac since I had an SE when I was a kid. The reason for getting it was partly fueled by the ability to dual-boot Windows. Yes, I do most of my developing in Windows, and until they invent decent circuit design software for Mac, I’ll be stuck there. The Dark Side has been defeated…partially.

My first observation: the keyboard is too far back towards the screen. The reason that this may be a problem? If you’re like me, and wear a watch with a titanium strap, when you rest it on the laptop, it makes this most uncomfortable screech, plus it’s likely that the nice aluminium finish will get scratched in the long run, ruining the cool Apple style.

A few hours into it, none of the reported problems with early versions have been noticed. No noises, whines or heat buildup. I have yet to stress it, but I have to say it looks good.

One curious bit of info the TNT driver gave me – he was surprised that the MacBook had been sent from Shanghai, as most Apple hardware he delivers comes from the U.S. Can anyone confirm where the first-gen MBPs were coming from?

Jun 10
Preferred server name Associated institution
—————————— —————————————————————-
whois.alabanza.com Alabanza, Inc C=US
whois.compuserve.com CompuServe Interactive Services, Inc C=US
whois.discount-domain.com interQ Inc. C=JP
dns411.com Name.Space C=US
whois.domaindiscover.com TierraNet, Inc. C=US
whois.domainpeople.com NetNation Communications Inc. C=CA
whois.easyspace.com EasySpace Ltd. C=GB
whois.enom.com eNom, Inc. C=US
whois.geektools.com CenterGate Research Group, LLC C=US
whois.ibm.com IBM C=US  
whois.internetnamesww.com Melbourne IT C=AU
whois.names4ever.com A+Net Registrar C=US
whois.namesecure.com Maaznet Directory Service Inc. C=US
whois.networksolutions.com Network Solutions, Inc. C=US
whois.pacbell.com Pacific Bell C=US
whois.register.com Forman Interactive Corp C=US
whois.registrars.com Internet Domain Registrars C=US
whois.sunquest.com Sunquest Information Systems C=US
     
whois.berkeley.edu University of California at Berkeley C=US
www.binghamton.edu State University of New York at Binghamton C=US
finger.caltech.edu California Institute of Technology C=US
csufresno.edu California State University – Fresno C=US
csuhayward.edu California State University – Hayward C=US
csus.edu California State University – Sacramento C=US
whois.cwru.edu Case Western Reserve University C=US
cc.fsu.edu Florida State University C=US
directory.gatech.edu Georgia Institute of Technology C=US
gettysburg.edu Gettysburg College C=US
gmu.edu George Mason University C=US
whois.dfci.harvard.edu Dana-Farber Cancer Institute C=US
hmc.edu Harvey Mudd College C=US
indiana.edu Indiana University C=US
nii.isi.edu US Domain Registry C=US
whois.isi.edu .INT Whois Service C=US
whois.messiah.edu Messiah College C=US
whois.rsmas.miami.edu University of Miami, Rosentiel School of Marine
and Atmospheric Sciences C=US
mit.edu Massachusetts Institute of Technology C=US
directory.msstate.edu Mississippi State University C=US
vax2.winona.msus.edu Minnesota State University – Winona C=US
info.nau.edu Northern Arizona University C=US
whois.ncsu.edu North Carolina State University C=US
nd.edu University of Notre Dame C=US
earth.njit.edu New Jersey Institute of Technology C=US
vm1.nodak.edu North Dakota State University C=US
austin.onu.edu Ohio Northern University C=US
ph.orst.edu Oregon State University C=US
osu.edu Ohio State University C=US
whois.oxy.edu Occidental College C=US
info.psu.edu Pennsylvania State University C=US
whois.cc.rochester.edu University of Rochester C=US
whitepages.rutgers.edu Rutgers University C=US
whois.sdsu.edu San Diego State University C=US
stanford.edu Stanford University C=US
camis.stanford.edu Stanford University C=US
stjohns.edu St. John’s University C=US
sunysb.edu State University of New York, Stony Brook C=US
whois.bcm.tmc.edu Baylor College of Medicine C=US
whois.ubalt.edu University of Baltimore C=US
directory.ucdavis.edu University of California at Davis C=US
uchicago.edu University of Chicago C=US
ucsd.edu University of California at San Diego C=US
weber.ucsd.edu University of California at San Diego, Division
of Social Sciences C=US
cgl.ucsf.edu University of California at San Francisco,
School of Pharmacy C=US
whois.uh.edu University of Houston C=US
whois.umass.edu University of Massachusetts at Amherst C=US
lookup.umd.edu University of Maryland C=US
umn.edu University of Minnesota C=US
ns.unl.edu University of Nebraska at Lincoln C=US
whois.upenn.edu University of Pennsylvania C=US
x500.utexas.edu University of Texas at Austin C=US
netlib2.cs.utk.edu na-net (linear algebra on computers) C=US
whois.virginia.edu University of Virginia C=US
whois.wfu.edu Wake Forest University C=US
wisc.edu University of Wisconsin C=US
wpi.wpi.edu Worcester Polytechnic Institute C=US
ibc.wustl.edu Washington University C=US
     
vm1.hqadmin.doe.gov U.S. Department of Energy Headquarters C=US
wp.doe.gov U.S. Department of Energy C=US
llnl.gov Lawrence Livermore National Laboratory C=US
x500.arc.nasa.gov NASA Ames Research Center C=US
x500.gsfc.nasa.gov NASA Goddard Space Flight Center C=US
whois.hq.nasa.gov NASA Headquarters C=US
x500.ivv.nasa.gov NASA Software Independent Verification & Validation Facility C=US
whois.jpl.nasa.gov NASA Jet Propulsion Laboratory C=US
x500.jsc.nasa.gov NASA Johnson Space Center C=US
larc.nasa.gov NASA Langley Research Center C=US
whois.larc.nasa.gov NASA Langley Research Center C=US
x500.msfc.nasa.gov NASA Marshall Space Flight Center C=US
x500.ssc.nasa.gov NASA Stennis Space Center C=US
x500.wstf.nasa.gov NASA White Sands Test Facility C=US
x500.nasa.gov National Aeronautics and Space Administration C=US
wp.nersc.gov National Energy Research Supercomputer Center C=US
whois.nic.gov Center for Email Technology C=US
seda.sandia.gov Sandia National Laboratories C=US
     
whois.nic.mil DoD Network Information Center C=US
whois.nrl.navy.mil Naval Research Laboratory C=US
     
whois.6bone.net 6bone Registry C=US
whois.abuse.net Network Abuse Clearinghouse C=US
whois.aco.net Austrian Academic Computer Network C=AT
whois.apnic.net Asia Pacific Network Information Center C=SC
whois.arin.net American Registry for Internet Numbers C=US
whois.aunic.net The .AU Registry C=AU
whois.awregistry.net All West Communications C=US
whois.cary.net CARYNET & HK eDNS Whois server C=HK
whois.corenic.net CORE Internet Council of Registrars C=CH
whois.crsnic.net Network Solutions, Inc. for Shared Registration System C=US
whois.cw.net Cable & Wireless USA C=US
wp.es.net Energy Sciences Network C=US
whois.hinet.net Chunghwa Telecom C=TW
ds.internic.net Network Solutions, Inc. (non-MILNET/non-POC) C=US
whois.internic.net Network Solutions, Inc. C=US
whois.ja.net JANET C=GB  
whois.krnic.net Korea Network Information Center C=KR
whois.lac.net Latin America & Caribbean Whois Server C=EC
companies.mci.net RFC 2345 TLD-WHOIS demonstration server C=US
whois.nameit.net nameIT C=US
whois.netnames.net NetNames (.AF, .BT, .PW, .TM) C=GB
whois.nomination.net NomiNation (.GB.COM, .GB.NET, .UK.COM, .UK.NET)
C=GB
whois.nsiregistry.net Network Solutions, Inc. C=US
whois.oleane.net OLEANE SA C=FR
whois.opensrs.net Open Shared Registration System C=US
pcdc.net Pacific Communications Development Corp. C=TW
whois.ra.net The Routing Arbiter Project C=US
whois.ripe.net Reseaux IP Europeens C=NL
whois.ripn.net Russian Institute for Public Networks C=RU
whois.thnic.net Thailand Network Information Center C=TH
whois.twnic.net Taiwan Network Information Center C=TW
     
whois.dhs.org Domain Host Services C=AU
whois.morris.org Morris Automated Information Network C=US
     
whois.nic.ac nic.ac C=AC
whois.nic.am AM Network Information Centre C=AM
whois.nic.as ASNIC C=AS  
wp.tuwien.ac.at Technische Universitat Wien C=AT
whois.risc.uni-linz.ac.at Research Institute for Symbolic Computation, University of Linz C=AT
whois.wu-wien.ac.at Wirtschaftsuniversitaet Wien C=AT
archie.au Australian Academic and Research Network C=AU
whois.connect.com.au Connect.com.au Pty Ltd C=AU
whois.adelaide.edu.au University of Adelaide C=AU
whois.monash.edu.au Monash University C=AU
uwa.edu.au University of Western Australia C=AU
sserve.cc.adfa.oz.au University College, Australian Defense Force Academy C=AU
whois.kuleuven.ac.be Katholieke Universiteit Leuven C=BE
whois.belnet.be Belgian National Research Network C=BE
whois.registro.br registro.br C=BR
whois.camosun.bc.ca Camosun College, Victoria, B.C. C=CA
whois.canet.ca Bell Canada Internet Transit Service C=CA
whois.cdnnet.ca CDNnet C=CA
whois.queensu.ca Queen’s University, Kingston, Canada C=CA
ac.nsac.ns.ca Nova Scotia Agricultural College C=CA
whois.unb.ca University of New Brunswick C=CA
panda1.uottawa.ca University of Ottawa C=CA
dvinci.usask.ca University of Saskatchewan, Engineering C=CA
whois.usask.ca University of Saskatchewan C=CA
phys.uvic.ca University of Victoria, Physics & Astronomy C=CA
whois.uwo.ca University of Western Ontario C=CA
whois.nic.cc NIC.CC Registration Services C=CC
whois.nic.ch SWITCH Swiss Academic and Research Network C=CH
whois.nic.ck Cook Islands Network Information Centre C=CK
whois.nic.cl U. de Chile (NIC Chile) C=CL
whois.cnnic.net.cn Computer Network Center, Chinese Academy of Sciences C=CN
whois.ci.ucr.ac.cr University of Costa Rica Computer Center C=CR
whois.cuni.cz Charles University, Prague C=CZ
whois.mff.cuni.cz Charles University, Faculty of Mathematics and Physics C=CZ
www.fce.vutbr.cz Faculty of Civil Engineering, Technical University of Brno C=CZ
gopher.fme.vutbr.cz Faculty of Mechanical Engineering, Technical University of Brno C=CZ
whois.fee.vutbr.cz Faculty of Elec. Eng. and Computer Sci., Technical Univ. of Brno C=CZ
whois.vutbr.cz Technical University of Brno C=CZ
whois.fh-koeln.de Fachhochschule Koeln C=DE
whois.fzi.de Forschungszentrum Informatik C=DE
hermes.informatik.htw-zittau.de HTW Zittau/Goerlitz Elektrotechnik/Informatik C=DE
whois.nic.de DEutsches Network Information Center C=DE
whois.th-darmstadt.de Darmstadt University of Technology C=DE
whois.tu-chemnitz.de Technische Universitaet Chemnitz C=DE
whois.uni-regensburg.de Universitaet Regensburg C=DE
whois.uni-c.dk Danish Computing Centre for Research and Education C=DK
whois.ut.ee University of Tartu C=EE
whois.eunet.es EUnet, Goya, Spain C=ES
whois.dit.upm.es Tech. Univ. Madrid, Telecommunications Highschool C=ES
cs.hut.fi Helsinki University of Technology C=FI
oulu.fi Oulu University C=FI
vtt.fi Technical Research Centre of Finland C=FI
whois.nic.fr Association Francaise pour le Nommage Internet en Cooperation C=FR
whois.nordnet.fr NordNet C=FR
whois.univ-lille1.fr University of Sciences and Technologies of Lille – France C=FR
whois.hknic.net.hk HKNIC C=HK  
whois.registry.hm HM Domain Registry C=HM
whois.iisc.ernet.in Indian Institute of Science C=IN
whois.ncst.ernet.in National Centre for Software Technology C=IN
isgate.is Association of Research Networks in Iceland C=IS
isgate3.isnet.is Internet a Islandi C=IS
pgebrehiwot.iat.cnr.it Nigerian TLD Registration Service C=NG
dsa.nis.garr.it GARR-NIS c/o CNR-CNUCE C=IT
whois.nic.it Italian Network Information Center C=IT
whois.nic.mx Network Information Center – Mexico C=MX
whois.aist-nara.ac.jp Nara Institute of Science and Technology C=JP
whois-server.l.chiba-u.ac.jp Chiba University C=JP
whois.hiroshima-u.ac.jp Hiroshima University C=JP
gopher.educ.cc.keio.ac.jp Science and Technology Computing Center, Keio University C=JP
whois.cc.keio.ac.jp Keio University C=JP
whois.cc.uec.ac.jp University of Electro-Communications C=JP
whois.yamanashi.ac.jp Yamanashi University C=JP
whois.nic.ad.jp Japan Network Information Center C=JP
www.orions.ad.jp Osaka Regional Information and Open Network Systems C=JP
whois.domain.kg Kyrgyzstan TLD C=KZ
sorak.kaist.ac.kr Korea Advanced Institute of Science & Technology C=KR
whois.nic.or.kr Korea Network Information Center C=KR
whois.domain.kz Kazahstan Domain Name Registry C=KZ
whois.nic.li SWITCH Swiss Academic and Research Network C=LI
whois.nic.lk Sri Lanka Domain Registry C=LK
www.restena.lu RESTENA C=LU
whois.nic.mm MM-NIC C=MM
www.nic.mx NIC-Mexico C=MX
condor.dgsca.unam.mx Univ. Nacional Autonoma de Mexico, D.G. de Servicios de Computo Academico C=MX
domain-registry.nl Stichting Internet Domeinregistratie Nederland C=NL
whois.norid.no UNINETT FAS (NORID) C=NO
whois.nic.nu .NU Domain Ltd C=NU
whois.canterbury.ac.nz University of Canterbury C=NZ
directory.vuw.ac.nz Victoria University, Wellington C=NZ
waikato.ac.nz Waikato University C=NZ
whois.patho.gen.nz PATHOGEN C=NZ
whois.domainz.net.nz Domainz — The New Zealand Internet Registry Ltd
C=NZ
whois.rcp.net.pe Red Cientifica Peruana C=PE
whois.icm.edu.pl Interdyscyplinarne Centrum Modelowania Matematycznego i Komputero C=PL
whois.elka.pw.edu.pl Faculty of Electronic Engineering, Warsaw University of Technology C=PL
whois.ia.pw.edu.pl Institute of Automatic Control, Warsaw University of Technology C=PL
whois.dns.pt Fundacao para a Computacao Cientifica Nacional C=PT
dsa.fccn.pt Fundacao para a Computacao Cientifica Nacional C=PT
chalmers.se Chalmers University of Technology C=SE
kth.se Royal Institute of Technology C=SE
whois.nic-se.se Network Information Centre Sweden C=SE
sics.se Swedish Institute of Computer Science C=SE
whois.nic.net.sg Singapore Network Information Centre C=SG
whois.nic.sh NIC.SH Domain Registry C=SH
whois.uakom.sk SANET (WAN of Slovak academic institutions) C=SK
whois.nic.st Domain Council of Sao Tome and Principe C=ST
whois.adamsnames.tc AdamsNames (.GS, .MS, .TC, .TF, .VG) C=TC
whois.nic.tj TJ-NIC C=TJ  
whois.tonic.to Tonic Domain Name Registry C=TO
whois.metu.edu.tr Middle East Technical University C=TR
whois.seed.net.tw Seednet C=TW
whois.iii.org.tw Institution for Information Industry C=TW
src.doc.ic.ac.uk Imperial College C=GB
whois.lut.ac.uk Loughborough University C=GB
whois.nic.uk Nominet UK (.UK Domain Registrar) C=GB
dsa.shu.ac.uk Sheffield Hallam University C=GB
whois.state.ct.us Department of Administrative Services, State of
Connecticut C=US
info.cnri.reston.va.us Corporation for National Research Initiatives,
Knowbot interface C=US
whois.frd.ac.za National Research Foundation C=ZA
whois.und.ac.za University of Natal (Durban) C=ZA
whois.co.za Foundation for Research Development C=ZA
     

The most common access approach involves separately querying each server of interest, via a direct tcp/whois connection. However, there are currently a number of active projects concerned with improved interfaces to these servers, either by more intelligent client software, or by standardization of the server behavior. Eventually, this should eliminate the need for end users to have the complete collection of server names; at this point, though, distributing the server list to individual Internet users is still worthwhile.

The procedure for accessing the whois servers will vary depending on your host’s operating system, and on what software is installed. On UNIX systems, the preferred method is

    whois -h _server_name_ _name_of_person_

If there is no whois program, sometimes it will work to type

    telnet _server_name_ 43

and then type the “name of person” on a separate line. (The usefulness of this will vary depending on the details of the telnet client implementation installed on your system.)

Jun 08

I ordered a Fon router when they dropped the price to 19$ from the usual 25$, to try the service and see how it performs. My feelings right now are mixed, as had I waited one day, I could have purchased it for 4$.

This ‘rubbery price’ approach was explained a few days ago in Martin Varsavsky’s blog, as a demand elasticity test. Basically, you drop the price, and see if hordes of people jump on the offer. Yesterday, after having been back at 25$ for a few days, they changed the price to 1$, but only for a few hours.

Jun 07

I have recently been following Fon, a movement that aims at creating a worldwide WiFi network, with Bills, Linuses and Aliens sharing their broadband with others, some for free, others for profit – split with Fon. The basis of Fon is that you connect a Linksys WRT54Gx WiFi router running special firmware to your broadband internet connection. This firmware turns the router into a captive portal, which then allows you to control access to the internet.

During the last couple of weeks, there has been some noise at Fon about having finally achieved production of their own WiFi router – they call it La Fonera. The move may seem obvious, as right now, they are buying the Linksys routers at full reseller price, in turn reselling them heavily subsidized at $25 a piece $1, as I’ve just read a minute ago. What I still don’t get is the title of the recent post in Martin Varsavsky’s blog, ‘Fon, the Social Router’.

A few days ago, Fon announced the purchase of 1.000.000 (literally!) of these new routers from the taiwanese manufacturer Accton. This company already manufactures WiFi routers, amongst other devices, and so it’s perfectly plausible that they can manufacture a customized router for Fon.

The main reason for manufacturing anything in China or Taiwan is the labour costs are extremely low. The electronics aren’t cheaper over there, and as a matter of fact, most of the core components are sold by western companies, such as Broadcom, Intel and Atmel. Labor conditions in chinese plants vary, from outright slavery to pretty good, but even then, one thing is a fact: they work all year round, including all weekends, only having ten days off for the Chinese New Year.

Reading Accton’s site, it appears that they treat their workers very well, and I applaud that. But this also means that they cannot produce as cheaply as the sweatshop-style manufacturers. A WiFi router with the horsepower required to run Fon’s platform is not cheap – let’s estimate roughly $22 per unit, for a purchase of 1 million units. If this estimate is correct, Fon would have blown on these routers a tad more than the entire funding they got from Skype, Sequoia, Index and Google.

If they were to give away the routers, to recoup this investment Fon would have to sell approximately 11 million 24-hour access packages, at $2 each. That is assuming Fon takes 100% of the money – with the Bill model, they would only get 50% of the income, as it is shared with the person providing the broadband and maintaining the hotspot. If they were to sell the routers at cost, they’d still have a huge logistics nightmare in their hands. Failure rates in mass-produced electronics range between 1% and 3%, meaning they could have up to 30.000 returns, costing them $1.32 million in hardware, plus logistics and other costs. One thing is to be a promoter of social WiFi – another is to turn into a hardware manufacturer – be it by ODM contracts, or by making the devices yourself.

So, I leave some open questions: has Fon chosen a company that respects human rights, treats its workers with dignity, but won’t give them a good deal as they could have gotten somewhere else, thus affecting their ROI expectations? Does investing in 1 million routers make economic sense with their current business model?

Jun 06

If you’ve done a more expensive one, I’d like to hear it!

Today I had to get to the center of Geneva from the airport, and in a bit of a hurry as the meeting I had to attend was getting close. I decided to take a taxi, which would also allow me to do a quick wardrive using my Qtek and a Bluetooth GPS. Finding almost 80 WiFi access points on the way was great, but the bill was painful! In all, the round trip from and back to the airport cost me 60 euros, some quick math makes each AP cost 75 cents (around $0.96).

Tomorrow, I will post some stats and a quick map of the captured APs. The stats will of course go to WiGLE, and the map will be made using an updated version of StumbVerter I’m working on – this will use MapPoint as usual, but you will also have the option of creating maps in Google Earth format. However, they will not look like the usual 2D icon maps that can be made using existing scripts, but will feature the traditional Netstumbler towers in 3D. How to show the signal strenght is being worked on, any suggestions?

Jun 06

The inside of Athena Unix

A. Course Outline
   1. Advanced use of the UNIX shell
   2. The internal workings of the mail system
   3. The notes teleconferencing system
   4. Networking
   5. Distributed File Systems
   6. Security
   7. Kernel
   8. The Ingres Database
   9. System Administration

B. UNIX from the system’s point of view
1. Jobs, Programs and Processes

a. What is a program?

A program is a sequence of instructions or commands which tell the computer how to accomplish a given task.  Under UNIX, this can either be a program which has been compiled, or it may just be a sequence of commands that you would normally issue to accomplish the task.  The latter type of program is often called a shell script.

b. What is a process?

A process is an invocation of a program.  If you run finger twice, each time you ran it, a new process was created.

c. Programs and processes encountered when logging in

1. getty
This process sits watching a terminal until someone  types something.  When someone does, it starts a login process.  Getty runs underneath another process                called init.

2. login
 When login is first called, it is given the username which you typed into getty.  It then asks for your password, checks it, and if correct performs the  steps of logging you in.  These include updating the wtmp and utmp files (Who is loged in), starting a shell (or whatever is listed in you /etc/passwd entry), giving your process the correct groups, and setting ones UID correctly.  If the password was incorrect (or if the user ID is invalid), login will  ask for your user id again.

3. init files
Once your shell has started, it reads several files from which it executes commands.  If you are running the cshell, .login and .cshrc are executed.  If you are running the bourne shell, .shrc and .profile are run.
      
d. What is a job?
The definition of job is not very clear.  In many cases you will see the term used instead of process.  Another common use of the term job is as a “session”.  In other words, everything being done by a given user from a given terminal.

 
2. Programs v. System Calls

One distinction which I want to make clear that is very important in understanding UNIX (or any other operating system for that matter) is the difference between a command and a system call.  A command in UNIX is usually a program which does something.  The command, in turn, executes system calls which actually perform the actions. 

D. The Shell

The following commands are built into the shell.  They are different than must Unix command in this respect since command such as cp and rm are actually separate programs.

1. Shell Commands
. alias    – Declare an alias for a command
. bg       – Run a process in background
. cd       – Change directory
. eval     – Evaluate an shell expression
. exit     – Exit the shell (killing it – must not be login shell)
. fg       – Run a process as your foreground process
. history  – Display recently executed commands
. jobs     – List processes which are children of the shell
. kill     – Kill a process
. logout   – Log out
. nice     – Run a command with a higher niceness     
. rehash   – Reinitialize table of commands
. set      – Set a shell variable
. setenv   – Set an environment variable
. source   – Take commands from a file
. stop     – Stop a process
. suspend  – Stop the shell
. umask    – Set default value for protection
. unalias  – Remove an alias
. unset    – Unset a shell variable
. unsetenv – Unset an environment variable

Jun 06

Today, I attended a business meeting in Geneva, and on the way back, noticed the info panel at the airport was on a bit of a vacation. geneva_airport

Jun 02

Sometimes, I feel like a human GPS navigator. And there are probably many more of us out there. Ever get a call from your wife, asking you to direct her to some remote place she is trying to drive to? My solution was to get a TomTom 500 navigator for her birthday. It comes with the maps for Spain in full detail, and a basic map of Europe, with main roads and cities. It can also be used as a Bluetooth handsfree for your mobile phone, so it’s quite a convenient device.

We set about trying it during a trip to visit my mother – since I knew the way, it would be a good sanity check on the navigator’s ability to lower our phone bills. When I told it where we wanted to go, and it told us to turn west instead of east, I started imagining what would happen. After a few minutes of following the navigator’s instructions without even looking out the window, this is where we ended up:

tomtomYes. It wanted us to go up a dirt path that only horses (and fit ones at that) can manage. Take a close look at the full-resolution picture, and judge by yourself.

After turning around, and following the route we always take, we had to turn off the sound for almost half the trip, as it kept insisting that we should “turn around as soon as possible” so we could take the easy-going dirt track.

GPS navigator manufacturers only make the devices, but not the data that’s in them. There are a few companies, such as Navtech and TeleAltlas, who take care of that, and license the use of the data. In this case, it seems that overzealous cartographers had simply taken anything that looked like a road in survey maps, and turned them into navigable paths. The result is my unfortunate experience. The collateral is that my wife doesn’t trust the device, unless it’s for navigating within city limits – thus limiting it’s usefulness, and not limiting my phone bill so much.