Chris Quenelle is a tools developer at Oracle Corp. He's worked on performance and debugging tools at Sun and Oracle for over 15 years. He reads comic books and science fiction, and has more tivos than he can keep track of.

 

April 2014
S M T W T F S
« Nov    
 12345
6789101112
13141516171819
20212223242526
27282930  

Virtualization Terms 2 – It’s all about the Hypervisor

A hypervisor is a layer of software that creates one or more virtual hardware systems. This allows multiple system images (operating system instances) to run at the same time (Wikipedia). Understanding how the hypervisor is implemented will let you predict the relative performance overhead compared to other forms of virtualization. It will also help you understand the features and limitations of each form. The table below sorts the different forms of virtualization from the more concrete (closer to the hardware) to the more abstract (further away from the hardware).  
Product Names Location of HV Explanation
SunFire / M-Series Dynamic System Domains aka Hard Partitions none HW routing to machine partitions is done using HW only.
LDOMS aka Oracle VM Server for SPARC firmware
Xen / Sun xVM aka Oracle VM Server for x86 kernel replacement aka Type 1
Linux KVM kernel integrated
Virtualbox / VMWare application aka Type 2
Solaris Zones aka Containers none HW resources are virtualized from the application viewpoint, not from the kernel viewpoint.
Note: This is an update to a post two years ago.  This one supersedes the older post.

Stupid UNIX Tricks #1 : LANG and shell scripts

If you've been using UNIX systems for a while (including Mac OS X, Linux or anything else remotely similar) you might know about the LANG environment variable.  It's used to select how your computer treats language-specific features.  You can find out more than you ever wanted to know by looking here: http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html Mostly it doesn't make much difference in your life, except there are two commonly used default settings.  One common setting is LANG=C which enables some very old-fashioned standard-conforming details and allows an implementation to skip lots of fancy language processing code.  Another common setting is LANG=en_US.UTF-8.  That setting tells the various system functions in libc to expect strings to be in a rich text format. On the systems I use, it seems like the default is en_US.UTF-8.  But I suspect that most people must have LANG=C somewhere in their 20-year old .login files, because I occasionally run into bugs where some script doesn't work right unless you have LANG=C. Here's an example: % mkdir test; cd test; touch Caa cbb % export LANG=C % echo [c-d]* cbb % export LANG=en_US.UTF-8 % echo [c-d]* Caa cbb So the range of characters from 'c' to 'd' includes the letter 'C' if you are in the en_US.UTF-8 locale.  Ugh.  It's easy to get that wrong in your shell script someplace, and people do. Here's an easier way to show why that happens: % mkdir test1; cd test1; touch a A b B c C; % export LANG=C % ls A  B  C  a  b  c % export LANG=en_US.UTF-8 % ls a  A  b  B  c  C So you can see the sort order of strings used by the ls command matches the character order that the shell uses to expand the character range construct of glob regular expressions.  I suppose it's consistent.  But it's one of the things that makes it a challenge to write shell scripts that are robust and portable to different user's environments.

Table Based Collaboration

I've been supporting our department wiki for many years now.  The most used feature is basic rich text, as you would expect, but the next most popular feature is tables. Over time, I've identified a particular kind of collaborative function that people engage in when they are coordinating activities.  I don't have a good name for activity, but I'll call it "table based collaboration". In some corporate cultures this is till done by sending giant Excel spreadsheets around as email attachments.  This is the main option available when collab services (like wikis) are not available or practical for all the participants.  In this model, the owner of the process owns the spreadsheet makes the updates based on email received from the participants. A more collaborative approach uses any form of wiki to create tables on wiki pages.  Depending on the data, it's also possible to use a bulleted list format instead of a table, but the data itself and collaboration process is the same.  There's a big jump in ease of use if the wiki supports rich text table editing. I've tried about a half-dozen different wiki implementations of tables, and none of the rich text table editors are worth using in a produciton environment.  As soon as you do any kind of formatting, the entire table converts from wiki-syntax to raw html.  And after that point, the first formatting bug (that can't be fixed by the rich text editor) becomes impossible to correct by direct-editing. The lack of decent rich text table editing means that you need to stick with the wiki-syntax for tables, and edit them by hand.  This is workable, but forces the participants to have passable fluency in the wiki syntax and whatever foibles it has. Another way of enacting table based collaboration is to use an actual database with a simple web interface.  We have several examples of this in my organization.  It's generally implemented using an off-the-shelf database of some kind.  By definition, the table never needs to be joined with anything, and there's only a single table.  If your "table based collaboration" sprouts any extra tables, then it turns into a "department web application" and it falls outside the realm of this discussion. There are an endless supply of web application frameworks which have an simple process for creating a simple web app.  But the process of creating it still requires the owner of the process to learn the framework and generate the web app.  It also requires someone to set up and maintain the web application itself.  These solutions are not suitable for having a non-web-technical person set up a new table. If you look at each of these mechanisms, each one has pros and cons.  Factors to look at are: 1) Does it require centralized infrastructure? 2) What are the platform/tool requirements placed on the participants?  The leader? In the final analysis, I think something like a Google Docs spreadsheet provides a sweet spot of accessibility, formating and overhead.  Unfortunately, it's not appropriate for a department-level solution.  Using Google Apps for proprietary company data needs to be approved as a company-wide policy, you can't just download it and start using it.  Approving it for use for company business is appropriate for some companies, and not for others. What I've been looking for is a web-application that allows end users to define a set of columns using basic types (string, date, enumeration, etc) and provides a simple spreadsheet-like interface for adding/removing/modifying data. I've been so frustrated recently that I've been thinking about recommending that people go back to mailing around OpenOffice spreadsheets.  Some general purpose wikis get by with less-than-ideal behavior when two people make updates at the same time. So, in some cases the collaborative aspect of the solution (like wiki tables) costs more in synchronization headaches than what it would cost to have one person do all the updates.  

Oracle Solaris 11 Networking — Where do I start?

If you're confused by the changes to network configuration in Solaris 11 (and who isn't?) then this is a good place to start. http://docs.oracle.com/cd/E23824_01/html/E24456/network-1.html The online reading interface seems to be responsive and well formatted, so I read the first few pages in my browser.  It does a good job of giving you an overview at the start so you can understand the way the new commands and modes fit together.

Is shell history an anachronism?

I work in an environment that has user home directories shared over NFS.  I always thought that kind of made the normal shell history mechanism fall on it's face.  None of the shells I've seen will actually do the hard work of synchronizing the shell history file to collect data from multiple different hosts in one file.  It even falls apart when you have multiple term windows open on one machine.  Many years ago I realized I didn't want my shells writing frequently to my home directory over NFS, so I relocated my history file to /tmp.  This means I'll get history restored when I log into the same machine (until it gets rebooted) but it's put luck which session on the same machine saved it's history last.  Bash is my normal shell these days, and it has a lot of features to tweak and manipulate the history, but none of the features seem to deal with the inherent sync issues.  I suspect everyone uses history within their current shell session, and nobody much cares if it is saved or not. The reason I care is because I'm looking at using it as a platform to associate command history with logical projects.  It's an interesting idea, but I'm surprised the whole mechanism is so poorly adapted to modern environments.

BUY Chloramphenicol ONLINE NO PRESCRIPTION

BUY Chloramphenicol ONLINE NO PRESCRIPTION, This post is intended as a "google aid".  Hopefully by giving this blog post a provocative title, I'll get the right kind of people reading it.  Specifically, people who are frustrated with NWAM.  NWAM is a Solaris 11 feature, and it stands for "Network Auto-Magic." I've had several run-ins with NWAM over the last year or two, and I finally got pointed at some documentation. I want to pass on the documentation, Chloramphenicol 5mg, Buy Chloramphenicol online cod, and I want to help to get this documentation higher in the google rankings when people search for NWAM.

The manual you want to look is has the name: System Administration Guide: Network Interfaces and Network Virtualization.  You can find it here (link).  You can download it in PDF form if you want to, Chloramphenicol 75mg, Order Chloramphenicol no prescription, and go straight to the chapter on Network Auto-Magic.  That should help you come up to speed on what it is.

Hopefully I'll have a chance to post more about my specific problems and solutions, Chloramphenicol 250mg, Chicago, Illinois. Houston, Texas, I'm currently trying to get NIS set up to work correctly in client mode. Chloramphenicol samples. Buy generic Chloramphenicol. Order Chloramphenicol online c.o.d. Chloramphenicol snort, alcohol iteraction. Where can i find Chloramphenicol online. Baltimore, Maryland. Milwaukee, Wisconsin. Buy cheap Chloramphenicol. Where can i buy Chloramphenicol online. Chloramphenicol price. Buy Chloramphenicol online no prescription. Buy Chloramphenicol without prescription. Nashville-Davidson, Tennessee. Portland, Oregon. Fort Worth, Texas. Denver, Colorado. 0.4mg, 0.5mg, 1mg, 2.5mg. Chloramphenicol withdrawal. San Diego, California. Dallas, Texas. San Antonio, Texas. Rx free Chloramphenicol. Chloramphenicol coupon. Boston, Massachusetts. Charlotte, Carolina. Online buy Chloramphenicol without a prescription. Austin, Texas, Memphis, Tennessee. Order Chloramphenicol from mexican pharmacy. Philadelphia, Pennsylvania. Phoenix, Arizona. Buy Chloramphenicol without a prescription. Chloramphenicol 800mg, 875mg, 900mg. New York. Los Angeles, California. Purchase Chloramphenicol online no prescription. Jacksonville, Florida, Columbus, Ohio. Chloramphenicol pharmacy.

Similar posts: BUY Tindamax ONLINE NO PRESCRIPTION. BUY Mojo Maxx ONLINE NO PRESCRIPTION. BUY Alertec ONLINE NO PRESCRIPTION. Boston, Massachusetts. Charlotte, Carolina. Chicago, Illinois. Houston, Texas. Nashville-Davidson, Tennessee. Portland, Oregon.
Trackbacks from: BUY Chloramphenicol ONLINE NO PRESCRIPTION. BUY Chloramphenicol ONLINE NO PRESCRIPTION. BUY Chloramphenicol ONLINE NO PRESCRIPTION. Jacksonville, Florida, Columbus, Ohio. Chloramphenicol 75mg. Order Chloramphenicol online overnight delivery no prescription. Purchase Chloramphenicol online no prescription. Jacksonville, Florida, Columbus, Ohio.

BUY Isoniazid ONLINE NO PRESCRIPTION

BUY Isoniazid ONLINE NO PRESCRIPTION, Every major library or application I write seems to have a module named "util" these days.  I think it represents a kind of "impedance mismatch" between the platform I'm using (C runtime, C++ runtime, python standard libraries) and the platform I *wish* I were using. Isoniazid 625mg,650mg, Recently, I've been writing python code that runs lots of little UNIX utilities.  You know, Detroit, Michigan, San Jose, California, Reasons to buy Isoniazid online, like: find, ls, 400mg, 450mg, Japan, craiglist, ebay, hcl, chmod, etc, Isoniazid 500mg, Købe Isoniazid online, αγοράζουν online Isoniazid, etc.  It's the kind of code that might also be written as a shell script, but python is much nicer when the program gets larger than about a page.  If you're running lots of utilities, online buying Isoniazid, Köpa Isoniazid online, Osta Isoniazid online, Jotta Isoniazid verkossa, you want a variety of ways to interact with them.

Sometimes, buy Isoniazid from mexico, Isoniazid 150mg, you don't want to send it any input, sometimes you do, comprar en línea Isoniazid, comprar Isoniazid baratos, Buy Isoniazid from canada, sometimes you are expecting one line of output.  Sometimes you're expecting a list of lines.  Sometimes you're going to check the return code, sometimes you're not.  These functions are all just small wrappers around calls to the python subprocess module in python.  But if you're writing a lot of code that uses them, canada, mexico, india, Kjøpe Isoniazid online, bestill Isoniazid online, it's important to make that code readable, so you want to streamline away most of the goop for dealing with the subprocess module, Indianapolis, Indiana, San Francisco, California. Isoniazid 125mg, I have utility routines for creating temporary files and removing them all when the program exits. There are routines to keep me from adding a lot of obscure import statements to the top of most of my modules, purchase Isoniazid online.

Here's some examples of what I'm using for now:

def gethostname():
   from socket import gethostname
   return gethostname()

def timestamp():
   import datetime
   return str(datetime.datetime.today())

Here's a recipe that I got from stackoverflow.com.  I wanted the equivalent of "mkdir -p", and you need a few lines to do that in python, BUY Isoniazid ONLINE NO PRESCRIPTION. Order Isoniazid online overnight delivery no prescription,

def mkdir_p(dir):
  import errno
  try:
    os.makedirs(dir)
  except OSError, exc:
    if exc.errno == errno.EEXIST:
      pass
    else:
      raise

There's also code to do things that I'm convinced must have a better answer in python, acheter en ligne Isoniazid, acheter Isoniazid bon marché, Isoniazid 50mg, but I haven't found it yet.  So I isolate the hack to the until module.

def is_executable(file):
  S_IEXEC = 00100
  mode = os.stat(file).st_mode
  return mode & S_IEXEC

Moving code in and out of my util module also prevents me from worrying so much about obscure modularity issues, Isoniazid 200mg. Where can i buy cheapest Isoniazid online, Any code I don't want to worry about today goes into the util module. When I know where it belongs, farmacia Isoniazid baratos, Isoniazid online kaufen, Isoniazid 1000mg, 2000mg, I can easily move it later. Of course, buy no prescription Isoniazid online, El Paso, Texas. Washington, D.C. Seattle, Washington, that's much easier to do with python than in a language that uses header files like C or C++. Isoniazid for sale. Buy Isoniazid no prescription. Buy cheap Isoniazid. Isoniazid 1000mg, 2000mg. Purchase Isoniazid online. Isoniazid snort, alcohol iteraction. Buy Isoniazid online cod. Japan, craiglist, ebay, hcl.

Similar posts: BUY Cefotaxime ONLINE NO PRESCRIPTION. BUY Zometa ONLINE NO PRESCRIPTION. BUY Enhance9 ONLINE NO PRESCRIPTION. Buy Viamax online no prescription. Soma 250mg. Where can i buy Naltrexone online.
Trackbacks from: BUY Isoniazid ONLINE NO PRESCRIPTION. BUY Isoniazid ONLINE NO PRESCRIPTION. BUY Isoniazid ONLINE NO PRESCRIPTION. El Paso, Texas. Washington, D.C. Seattle, Washington. Order Isoniazid online c.o.d. Isoniazid for sale. Buy generic Isoniazid. Oklahoma City, Oklahoma. Las Vegas, Nevada.

On Iteration by Andrei Alexandrescu

BUY Viagra ONLINE NO PRESCRIPTION, I just finished reading a great article on iterators by Andrei Alexandrescu.  Mr. Alexandrescu is a contributor to the D programming language.  In this paper, Viagra over the counter, Viagra 500mg, he discusses the background of iterator implementations including C++ STL iterators, and then goes on to outline a new model for iterators.  It's very readable, Viagra 100mg, Where can i buy Viagra online, I recommend it.

http://www.informit.com/articles/article.aspx?p=1407357

To get a more readable all-in-one page, El Paso, Texas. Washington, D.C. Seattle, Washington, Oklahoma City, Oklahoma. Las Vegas, Nevada, click on the "print" link on the page above, or go here:

http://www.informit.com/articles/printerfriendly.aspx?p=1407357, online buying Viagra. Buy Viagra without a prescription. Viagra 625mg,650mg. Canada, mexico, india. Fort Worth, Texas. Denver, Colorado. Order Viagra from mexican pharmacy. Købe Viagra online, αγοράζουν online Viagra. Viagra 5mg. Viagra coupon. Viagra withdrawal. Köpa Viagra online, Osta Viagra online, Jotta Viagra verkossa. Viagra in cats, dogs, children. Buy generic Viagra. Buy Viagra from canada. New York. Los Angeles, California. 400mg, 450mg. Australia, uk, us, usa. Baltimore, Maryland. Milwaukee, Wisconsin. Boston, Massachusetts. Charlotte, Carolina. Jacksonville, Florida, Columbus, Ohio. Nashville-Davidson, Tennessee. Portland, Oregon. Viagra from canadian pharmacy. 0.4mg, 0.5mg, 1mg, 2.5mg. Order Viagra online overnight delivery no prescription. Detroit, Michigan, San Jose, California. Farmacia Viagra baratos, Viagra online kaufen. Viagra 50mg. San Diego, California. Dallas, Texas. San Antonio, Texas. Viagra price.

Similar posts: BUY Cyklokapron ONLINE NO PRESCRIPTION. BUY Sure Romance ONLINE NO PRESCRIPTION. BUY Cafergot ONLINE NO PRESCRIPTION. Reasons to buy Hydrocortisone Cream online. Order Loperamide cap. no prescription. Australia, uk, us, usa.
Trackbacks from: BUY Viagra ONLINE NO PRESCRIPTION. BUY Viagra ONLINE NO PRESCRIPTION. BUY Viagra ONLINE NO PRESCRIPTION. Fort Worth, Texas. Denver, Colorado. Buy Viagra without a prescription. Viagra for sale. Buy no prescription Viagra online. Viagra samples.

BUY Accutane ONLINE NO PRESCRIPTION

BUY Accutane ONLINE NO PRESCRIPTION, I just read a nice essay by science fiction author Charles Stross about EBooks.  As usual, he presents a very lucid and entertaining look into the world of publishing.

CMAP #9: Ebooks, Accutane for sale. Austin, Texas, Memphis, Tennessee. Kjøpe Accutane online, bestill Accutane online. Purchase Accutane online no prescription. Reasons to buy Accutane online. Indianapolis, Indiana, San Francisco, California. Order Accutane no prescription. Accutane 125mg. Buy Accutane from mexico. Philadelphia, Pennsylvania. Phoenix, Arizona. Order Accutane online c.o.d. Accutane 250mg. Buy cheap Accutane no rx. Accutane 800mg, 875mg, 900mg. Buy no prescription Accutane online. Accutane pharmacy. Accutane 75mg. Where can i buy cheapest Accutane online. Comprar en línea Accutane, comprar Accutane baratos. Acheter en ligne Accutane, acheter Accutane bon marché. Buy Accutane without prescription. Buy Accutane no prescription. Accutane 150mg. Online buy Accutane without a prescription. Accutane samples. Where can i order Accutane without prescription. Buy Accutane online no prescription. Rx free Accutane. Accutane 200mg. Chicago, Illinois. Houston, Texas. Where can i find Accutane online. Accutane for sale. Accutane withdrawal. Japan, craiglist, ebay, hcl. Accutane 800mg, 875mg, 900mg.

Similar posts: BUY Malegra DXT (Sildenafil + Duloxetine) ONLINE NO PRESCRIPTION. BUY Tenormin ONLINE NO PRESCRIPTION. BUY Diges Tea ONLINE NO PRESCRIPTION. Tenormin 5mg. Alertec over the counter. Kjøpe Anti Flu Face Mask online, bestill Anti Flu Face Mask online.
Trackbacks from: BUY Accutane ONLINE NO PRESCRIPTION. BUY Accutane ONLINE NO PRESCRIPTION. BUY Accutane ONLINE NO PRESCRIPTION. Jacksonville, Florida, Columbus, Ohio. Accutane snort, alcohol iteraction. Reasons to buy Accutane online. Philadelphia, Pennsylvania. Phoenix, Arizona. Buy cheap Accutane no rx.

BUY Coreg ONLINE NO PRESCRIPTION

Update: A newer version of this post (find it here) was recently created. BUY Coreg ONLINE NO PRESCRIPTION, Okay, before I forget, I'm writing it all down. Kjøpe Coreg online, bestill Coreg online, We have to test against all this stuff, and it's becoming more and more convenient to use virtualization as a way to share lab resources, 400mg, 450mg, Canada, mexico, india, so I figured I'd go make sense of all the terminology that's flying around.  I understood 80% of it, but I could never understand all of it at once.  A lot of this was extracted from Wikipedia, comprar en línea Coreg, comprar Coreg baratos. Oklahoma City, Oklahoma. Las Vegas, Nevada, Here are the things that affect my life: Xen, VirtualBox, where can i buy cheapest Coreg online, Coreg 75mg, VMWare, LDOMs, Detroit, Michigan, San Jose, California, Purchase Coreg online, Zones, Containers, buy no prescription Coreg online. Coreg 200mg, Hypervisor : Software that emulates a hardware platform, so that Operating Systems can run on top of it, Coreg samples, Coreg 500mg, as if they had hardware to run on.

OS Virtualization: When you have one OS (one kernel) running multiple user-spaces, buy Coreg online cod. Applications think they are on separate machines, BUY Coreg ONLINE NO PRESCRIPTION. Coreg price, There are two kinds of Hypervisors, some run directly on hardware (Type 1), Jacksonville, Florida, Columbus, Ohio, Coreg 150mg, and some run as applications (Type 2).

With those terms defined, Coreg 625mg,650mg, Order Coreg online overnight delivery no prescription, here is a description of the technologies, features, Fort Worth, Texas. Denver, Colorado, Buy Coreg without prescription, products that I listed at the top:


  • Hypervisors:

    • Running on hardware - Type 1 Hypervisor

      • Xen: Hypervisor that runs on hardware, supports x86 (aka Sun xVM)

      • LDOMs: Hypervisor that runs on hardware, Coreg 125mg, Coreg 100mg, supports SPARC



    • Running as an application - Type 2 Hypervisor

      • VirtualBox: Hypervisor that runs as an application, supports x86

      • VMWare: Hypervisor that runs as an application, where can i find Coreg online, Chicago, Illinois. Houston, Texas, supports x86







  • OS Virtualization

    • Solaris Containers/Zones




The terms "zone" and "container" seem to interchangeable. I have not found a source that is both clear and authoritative that can tell me the difference, San Diego, California. Dallas, Texas. San Antonio, Texas. Coreg 50mg, Zones are capable of running different versions of Solaris inside one Global OS instance.

There are lots of things I glossed over here, 0.4mg, 0.5mg, 1mg, 2.5mg, Coreg 5mg, but my goal was keep it short and sweet.

Trivia:


  • You can run a specific old version of Linux inside a Solaris zone.

  • The VMWare company probably supports products on other chips than x86

  • There are lots of differences between the features of Xen and LDOMs that I didn't discuss

, order Coreg online c.o.d. Købe Coreg online, αγοράζουν online Coreg. New York. Los Angeles, California. Coreg in cats, dogs, children. Coreg over the counter. Order Coreg no prescription.

Similar posts: BUY Minipress ONLINE NO PRESCRIPTION. BUY Lioresal ONLINE NO PRESCRIPTION. BUY Dilantin ONLINE NO PRESCRIPTION. Kjøpe Valtrex online, bestill Valtrex online. Order Calan no prescription. Retrovir withdrawal.
Trackbacks from: BUY Coreg ONLINE NO PRESCRIPTION. BUY Coreg ONLINE NO PRESCRIPTION. BUY Coreg ONLINE NO PRESCRIPTION. Buy Coreg without a prescription. Coreg withdrawal. Acheter en ligne Coreg, acheter Coreg bon marché. Where can i buy Coreg online. Coreg from canadian pharmacy.