Organizing an AS Model - howto?

Hi,
I have a conceptional question regarding best practice to
handle externally loaded XML within ActionScript 3.0 code. How do I
organize the data in a useful way?
Now I have looked though several books and videos on this
topic but have only found simple solutions, that don't seem to be
the every day scenario as a developer. So let's take a look at my
concrete problem and I hope I can help many other developers who
are stuck just like me:
I'm actually using Flex, but there is no big difference for
clever ways of handling loaded data.
I load a complex XML that contains many child nodes via
HTTPService and call the resultHandler-function to deal with data
received. Here is where the fun begins:
James Talbot explains on his Total Training video on Flex,
that is is smart to always use ArrayCollections as a data structure
to store the XML data. I'm wondering, if that's true, because then
I can't really use the power of e4x to read the data from my XML.
Wouldn't it be better to store the data as a XMLListCollection?
What are the disadvantages in this case? What about classes? Should
I make a class for each element of my XML that I load and store
them in ArrayCollections as I parse through the XML?
I don't want to pass on the data directly some dataProvider,
because I want to work with the data that I received first (eg.
calculate averages or sums). The gained information will be used
for other Controls.
Does anyone know some best practice or can briefly explain
what to be aware of?
thanks
Harry

It appears that using xml as a dataProvider for very complex
UIs, like hundreds of cells in a DataGrid, has some performance and
memory use issues. In such a case, you will get better response
from the UI, like when scrolling, If your dataProvider is a
collection of strongly typed objects. Accessing a property of such
an object is significantly faster than accessing an XML attribute.
XMLListCOllection will not help this because you are still
accessing XML nodes/properties.
In my personal experience, I have not see this problem, but I
do not have any datagrids with 30 columns and hundreds of rows,
using complex custom ItemRenderers.
E4X xml is still the fastest way to get xml from the server.
Do NOT leave resultFormat at the default "object". That parse
process is slow and rarely useful.
So no single answer fits all.
Tracy

Similar Messages

  • Three-tier model howto

    Hi... i�m newbie in Java.
    I am supossed to create an application using three-tier model, i have made it using two-tier model.
    Can anybody give me a hand with the code,
    I need an example to start i can not fiugre this out.
    The application needs to interact with a database.
    I�ve heard that in the three-tier model you do not have to make the whole statement in one method, instead you have to create some utilitary classes in which each method returns data corresponding to a part of the query. How true is this?
    Please i need some examples!
    i am desperate.

    To get you started have a look at the RMI and JDBC API's. These are basicly all you need for a 3 tier client server archtecture. There are plenty of resources/examples at www.java.sun.com.

  • Data modeler - howto assign process/function to data model

    Hello all
    Problem path:
    sd11 (data modeler)
    i.e model: UNIMODELL (this is the model used as training in help.sap.com)
    There is [functions/processes] button (F8)
    When using UNIMODELL there is a process assigned to model and I can choose it (goes to Display Module: A.... screen)
    But:
    when I create my own data model -> when clicking [functions/processes] i get:
    "No functions assigned" infrmation
    Where can I add fun/proc to my data model?
    Thx4anyHelp
    Mateusz

    What method did you use?
    If FK is created and not removed then no scope clause is added - no need for that.
    It works for me:
    CREATE TABLE TABLE_2
    Column_2 REF StructuredType_1 ,
    Column_3 REF StructuredType_1
    ALTER TABLE TABLE_2
    ADD ( SCOPE FOR ( Column_2 ) IS TABLE_1 )
    ALTER TABLE TABLE_2
    ADD ( SCOPE FOR ( Column_3 ) IS TABLE_3 )
    table_1 and table_3 are of StructuredType_1
    Philip

  • MVC - Organizing models and managing GUI windows

    I'm having difficulty organizing my MVC models and basically controlling the whole application in general. My application works, but all the controlling logic is being dumped into the main class (Main.java). Here's a simple example of the problem I'm having:
    Objectives
    1) Display a list of Companies; i.e. Sun, Microsoft, Adobe, etc. (JFrame with a JList)
    2) The user select a Company and it pops up a new dialog with a list of Employees. (JDialog with a JList)
    Here are the classes I came up with:
    Models:
    1) CompanyListModel
    2) EmployeeListModel
    Listeners:
    1) CompanyListener
    Views:
    1) CompanyListFrame
    2) EmployeeListDialog
    Domain Objects:
    1) Company
    2) Employee
    And then there's the main application class. To implement the above objective, I've been using my main class to control the GUI.
    Here's an example of how I've implemented it.
    public class Main implements CompanyListener {
        /** Creates a new instance of Main */
        public Main() {
            CompanyListModel companyModel = new CompanyListModel();
            companyModel.addCompanyListener(this);
            CompanyListFrame gui = new CompanyListFrame(companyModel);
        // A company was selected.  Open a new dialog and display the employees
        public void companySelected(CompanyModel companyModel) {
            Company company = companyModel.getCompany();
            EmployeeListModel employeeModel = new EmployeeListModel(company));
            EmployeeListDialog = new EmployeeListDialog(employeeModel);
        public static void main(String[] args) {
            new Main();
    }My program is similiar design wise to the above, but contains many more classes. I'm still using my main class to control GUI logic (popping up new windows and creating models, etc). Thus, my main class implements like 5 different listeners. I'm sure this is a really poor design choice, I just don't know how else to implement it.
    I should not nest models... correct? I was thinking about nesting the models, i.e. CompanyListModel contains an EmployeeListModel, but then the CompanyListModel will need to spawn the EmployeeListDialog when a Company is selected, right? Thus, I'd be mixing the view with the model.
    Please provide some advice! :( Thanks!

    I'm sorry, I read your reply about 3 times and I've
    spent the last 20 minutes trying to implement it.
    I'm just not sure how the controllers are involved.
    Could you possibly provide source code for the
    controllers (and any part of the models / views that
    communicate with the controller)?No source code. Read about the MVC pattern.
    I feel like this is a wasted effort. I'm the sole
    entry level programmer at my company and I have only
    one year real wold experience . I work with about 10
    other senior level (microsoft) programmers and none
    of them code in this fashion. All of our
    applications are desktop applications using C#,
    C/C++, or scripting languages.What's a wasted effort? You posting a question? Me posting a response? You writing Java? You trying to think about how to do this properly?
    So why are you using Java if you're in a Microsoft shop? How's this working out with your co-workers?
    I feel like if I worked on a project with one of
    them, they would criticize me for using MVC and
    "complicating" such a simple issue.That's usually because Microsoft likes tying a particular text box to a column in a table. If you change the textbox value you change the database. Nice and easy, right?
    In trying to implement this solution, my workspace
    now has a huge load of classes for something so
    simple:
    Company
    CompanyFrame
    CompanyListController
    CompanyListListener
    CompanyListModel
    CompanyListPanel
    Employee
    EmployeeListDialog
    EmployeeListModel
    EmployeeListPanel
    Main
    11 classes and I left out the Emp Controller and
    Listener to simplify the example. The more classes
    that you have, the slower the application startup
    time. Moving the Views to JPanels as you suggested
    seemed smart but it wound up making it more
    difficult. I'm using NetBeans and Matisse and I
    don't believe you can use another JPanel class in the
    GUI editor unless you make it a bean.
    Traditionally, I would have implemented as follows.
    I would have completed it in 5 minutes and it would
    be much easier to understand what's going on:
    Company
    CompanyFrame - contains a list of companies
    Employee
    EmployeeListDialog - contains a list of employees
    Main
    Of course doing it this way I'd be mixing data with
    the view, but is that always a bad thing or is it
    only bad for large scale applications? Should MVC
    not be used for small modules like this?For small modules that are nothing more the CRUD operations, it might be that a simpler approach is fine. (PS - CRUD stands for Create/Read/Update/Delete, standard relational operations on tables. I'm not commenting on you or your code.)
    It only becomes a problem when that "simple" CRUD application decides to branch into something bigger. The approach of mingling view and data can become problematic then.
    It's still possible to have a clean application for small apps. I think most Microsoft programmers do it that way because the wizards and stuff they're used only allow it to be done that way.
    The reasons why I'm going away from my old "academic"
    programming practices is:
    1) I want to become a better programmer of course!Kudos to you. At least you're still thinking about it.
    2) There's alot of database queries in this
    application so I wanted to separate that from the GUI
    as much as possible. Thus, each model knows how to
    query the database and it's all done on separate
    threads.That's good motivation, too.
    I'd really like to do this right. If you could
    provide source that would be great. Also, are there
    any good books on desktop GUI development geared
    towards Java (or even C#)?I don't write for the desktop, so I'm not much help.
    I already purchased the e-book Desktop Java Live,
    which is great but they don't go into detail about
    MVC and instead use Model-Presenter which has been
    retired (according to Fowlers website). I found that
    section fairly confusing so I figured I'd start with
    MVC since it's more widespread (?).If you're reading Martin Fowler you're doing well.
    Thank you.I'm sorry that I'm not more helpful.
    %

  • Index organized Materialized View in SQL Developer Datamodeler

    Hello SQL Developer Datamodeler Team,
    I'm using version 4.0.2.840 and looking for a how-to to change a MV to an IOMV.
    So far I do the following:
    Create Table in Relational Model
    Create MV in Oracle 11g Physical Model
    Double Click Table in Oracle 11g Physical Model
    Set "Implement as MV" to my MV
    OK
    Now I can't find an option for index organized in Physical Model Materialized View properties.
    The setting "Organization: Head/Index" for Physical Model MV-Basetable properties does not change the generated DDL.
    Also, setting this to "Index" does not enable the window's "IOT Properties"-tab (like it does for normal tables).
    Is it possible to create an Index organized Materialized View in current SQL Developer Datamodeler?
    Thank you & Best regards,
    Blama

    Hi Blama,
    DDL for Index-organized Materialized Views is generated in the Early Adopter release 4.1.0.866, which is now available for download.
    The Organization on the Table that is implemented as the Materialized View should be set to INDEX, and the Table's IOT properties will be used during DDL generation.
    David

  • Lens Profiles Across Camera Models ACR 6.6

    ACR 6.6:
    In looking at the file structure for ACR lens prifiles I see they are organized by camera model in the file name. I have a Canon 50D but the lens I am thinking of acquiring is in the list for a 5D. Will ACR still pull in this profile? I know that there may be some validation issues in dealing with a full sensor vs. a crop sensor in this case.

    ronzie99 wrote:
    Will ACR still pull in this profile?
    Yes...ignore the camera models as they don't impact the use of the lens profile.

  • Best Practice for Organizing Enterprise Models

    We need to migrate our Oracle Designer models (almost 10 years in the works) into OSDM to stay with current design tools. We do not have the option of staying with Designer.
    I need to know of any best practices or other documents that describe a way to organize an enterprise model in OSDM. I am coming from years of working with Designer and want to translate the multiple Application Folders in Designer into a similar organization in OSDM. We have 3 COTS packages with 1000's of tables each and many custom applications that use tables from multiple schemes and databases. Our developers like to see all the tables for a single custom application in its own diagram no matter where they come from and the DBA's don't want to wade through several thousand tables to find the handful we need nor have to duplicate table definitions in multiple models. In Designer we have been doing that with Application Folders.
    Another area of interest is in the deployment of database objects to multiple databases where the privileges vary from development to production. In the old Designer world this is done via implementations in the DB Admin tab. Can this be done in OSDM?

    Hi Marcus,
    Our developers like to see all the tables for a single custom application in its own diagram no matter where they come from and the DBA's don't want to wade through several thousand tables to find the handful we need nor have to duplicate table definitions in multiple models. In >Designer we have been doing that with Application Folders.There are no application folders in data Modeler. You can use subviews to define your subject areas. Subview is crated for each application (folder) during import form Designer repository.
    Philip

  • Howto implement temporary changes / rollback in my model?

    First some background information: I'm building a project management tool. It's based on JEE, Struts 2 and uses AJAX. The model exists as a singleton within the application-server. The model is basically an object tree which consists of projects, releases, usecases, tasks, team members and employees. The model uses the observer pattern to update data when it's necessary. For instance if you change the amount of work required to solve a task, the total amount of work to finish the usecase and the total amount of work to finish the release are updated.
    I've got a dialog where a user can add and remove team members from a task and set multiple attributes on each team member. All these changes will affect the whole model (for instance, if you add an employee to the task-team this has an effect on the availability of this employee for other tasks). In the UI the user will see the result of his actions immediately, for that i need to update the model. But, what if the user hits the Cancel button? Or worse, leaves the dialog open and closes the browser? In that case I need to rollback my model. But since it's almost impossible to notice the closing of the browser reliably, rollback is not an option. So the best thing would be to work on a temporary model when the dialog opens. Then the user may change whatever he wants, and when he finally hits the OK button the temporary model needs to be merged with the "real" singleton-model (Since another user may have changed something in another task).
    Now to my question: How would you implement this? Is there a pattern one could use? Do I really have to clone the whole object tree or is there a better way to solve this?
    Thanks for your replies,
    André

    Thanks for your answers. They gave me some fresh ideas.
    Both approaches go into the same direction somehow. I like the idea of having a simple facade, that hides the complex stuff (like the copy-on-write implementation). Anyway, it really looks like my singleton implementation is too simple for what I'm doing here sigh.

  • Howto map to an odata model function import returning an entity, not an entity set?

    Hi,
    how do I map to an odate model function import returning an entity (not an entity set) in a XML view? I tried property mapping {/method/property}, which does not make a network request and sets the value to null and I tried aggregation mapping {/method}, which makes a network request with $skip=0&$top=100&$inlinecount=allpages which is of course rejected by the odata source.
    Thanks,
    Wolfgang

    Hello Dr. Wolfgang,
    you can use
      var oParams = {};
      oParams.Field1 = 'ABC';
      oParams.Field2= 'XYZ';
      oParams.Field3= '123';
      oModel.callFunction('MyFuncImport', 'GET', oParams, null, function(oResponse){
            alert("Call to Func Imp successful");
        },function(){
            alert("Call to Func Imp failed");});
    also refer SAPUI5 SDK - Demo Kit
    Regards,
    Chandra

  • Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto

    h1. Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto
    Author: Dude
    Version: D
    Last modified: 14-Jan-2012
    You are welcome to add comments, but please do not discuss your installation issues in this thread.  If you have a question about the instructions, please add a simple note to the link of your own thread. The instructions are the result of my own research and development. If you would like to use any of the information for your own blog or website, please include a link to this reference to include future changes.
    Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto
    h2. Purpose
    This document outlines instructions how to install Oracle XE under Ubuntu 11.10.
    Ubuntu or Debian based Linux is not on the list of supported operation systems according to the Oracle documentation at http://download.oracle.com/docs/cd/E17781_01/install.112/e18802/toc.htm. You may want to consider virtualization software like Oracle Virtualbox and install Oracle Enterprise Linux as a free and professional alternative to installing XE under Ubuntu. You can also download pre-build virtual machines that include Oracle XE. You can browse http://otn.oracle.com/community/developer-vm for more information.
    h2. Topics
    h4. 1) Install Linux Ubuntu
    h4. 2) Remote Terminal
    h4. 3) Install Additional Software
    h4. 4) Managing Swap Space
    h4. 5) Modify Kernel Parameters
    h4. 6) Oracle Home Directory
    ...a) Resize the Root Partition
    ...b) Setup External Storage
    h4. 7) ORA-00845: MEMORY_TARGET
    h4. 8) Installing Oracle 11gR2 Express Edition
    h4. 9) Post-Installation
    h4. 10) Tips and Troubleshooting
    ...a) Port 1521 appears to be in use by another application
    ...b) cannot touch `/var/lock/subsys/listener': No such file or directory
    ...c) ORA-00845: MEMORY_TARGET
    ...d) Apex ADMIN password
    ...e) SYS and SYSTEM password
    ...f) Uninstall Oracle 11g XE
    ...g) Reconfigure Oracle 11g XE
    ...h) Gnome Classic desktop
    ...i) Unix vi cursor keys
    ...j) Backup Database
    h4. 11) History
    h4. 12) References
    h2. 1) Install Linux Ubuntu
    The following assumes you have installed Ubuntu 11.10 Desktop Edition for AMD 64-bit, or upgraded from a previous version. Keep in mind that Oracle 11gR2 Express Edition is only available for 64-bit architecture. It is not necessarily a requirement, but I would not bother to install Oracle 11gR2 XE on a system with less than 2 GB of RAM installed. You can download Ubuntu for free at: http://www.ubuntu.com/download/ubuntu and install it using the default settings provided.
    You can apply the latest OS patch-sets by clicking the power button icon in the upper right hand corner of the screen and selecting "Updates available..."
    h2. 2) Remote Terminal
    You will need command line access to perform the installation tasks. Select the top "Dash Home" button of the Unity toolbar and enter the word "terminal", or use CTRL-ALT-t. If you prefer to open a remote terminal session use SSH. Ubuntu does not come with a secure shell login by default. To install it, use the following command:
    sudo apt-get install openssh-serverYou cannot login as root unless you set a root password using the "sudo passwd root" command. However, you can get root user access using the "sudo" command, which requires only to re-enter the password of your personal account. Access to "sudo" is controlled by the /etc/sudoers file.
    The best way to establish a remote command line session as root is to login with your personal account, e.g.: ssh [email protected], and then type "sudo su -" to become root, or use "sudo <command>" to execute individual commands. If your account does not have "sudo" access you can login as root using "su - root", but will need to know the root password.
    h2. 3) Install Additional Software
    Oracle 11g Express Edition requires additional software that is not installed by default:
    sudo apt-get install alien libaio1 unixodbch2. 4) Managing Swap Space
    Oracle demands that the minimum swap space for Oracle Database XE is 2 GB (2095100 KB) or twice the size of RAM, whichever is lesser. Enter the following shell command to verify your swap space:
    cat /proc/meminfo | grep -i swap
    SwapCached:            0 kB
    SwapTotal:       2095100 kB
    SwapFree:        2095100 kBYou can increase available swap space by using a swap file as long as disk space permits. The advantage of a swap file versus a swap partition is flexible space management because you can add or delete swap space on demand as necessary. The following will create and enable an additional 1 GB swap file at system startup, located in the /home directory:
    Login as root:
    sudo su -Enter the following commands:
    dd if=/dev/zero of=/home/swapfile bs=1024 count=1048576
    mkswap /home/swapfile
    swapon /home/swapfile
    swapon -aCreate a backup of the original "fstab" file and add the new swap file:
    cp /etc/fstab /etc/fstab.backup_`date +%N`
    echo '/home/swapfile swap swap defaults 0 0' >> /etc/fstabExit from root and verify the new swap space:
    exit
    swapon -s
    Filename                    Type          Size     Used     Priority
    /dev/sda5                               partition     2095100     0     -1
    /home/swapfile                          file          1048572     0     -2Swap space is not a substitute for installed RAM. Swap space is a safeguard that allows the system to move idle processes to disk before the OOM killer will begin to terminate processes in order to free up enough real memory to keep the system operational. The general rule for sizing the swap space depends on the size of installed RAM. If your system has less then 4 GB of RAM the swap space should usually be at least twice this size. If you have more than 8 GB of RAM installed you may consider to use an equal size as swap space. The more RAM you have installed, the less likely you are going to run into memory starvation, and the less likely you are going to need swap space, unless you have a bad process.
    h2. 5) Modify Kernel Parameters
    Oracle 11gR2 Express Edition requires the following Kernel parameters. Enter the commands exactly as shown:
    Login as root:
    sudo su -Cut & paste the following directly into a command shell (not a text editor):
    cat > /etc/sysctl.d/60-oracle.conf <<-EOF
    # Oracle 11g XE kernel parameters
    fs.file-max=6815744
    net.ipv4.ip_local_port_range=9000 65500
    kernel.sem=250 32000 100 128
    # kernel.shmmax=429496729
    kernel.shmmax=107374183
    EOFLoad and verify the new kernel parameters:
    service procps start
    sudo sysctl -q fs.file-max
    sudo sysctl -q kernel.shmmax
    sudo sysctl -q net.ipv4.ip_local_port_range
    sudo sysctl -q kernel.sem The SHMMAX kernel parameter defines the upper memory limit of a process. It is a safeguard to stop a bad process from using all memory and causing RAM starvation. The Linux default is 32 MB. The official Oracle XE installation documentation suggests a value of 4 GB -1 bytes (429496729). Since Oracle 11g XE has a 1 GB memory limit, a smaller footprint will be a better safeguard for the complete system. Setting the SHMMAX parameter to 107374183 will be sufficient.
    h2. 6) Oracle Home Directory
    At the time of this writing, Enterprise Linux 6 is not supported for Oracle database yet. It is therefore not possible to confirm Oracle ext4 filesystem compatibility, which is default in Ubuntu 11. According to various information, ext4 may cause a performance problem for Oracle 11g database. The following will show you how to add a ext3 partition to your existing setup.
    h3. 6.a) Resize the Root Partition
    Provided you have sufficient free disk space, you should be able to resize the root partition to create an extra ext3 filesystem. Considering the 11 GB user datafile limit of the Express Edition, 18 GB should be more than enough.
    You can use the free Gparted Live CD to shrink your startup volume. Gparted downloads are available at http://sourceforge.net/projects/gparted/files/gparted-live-stable. When burning the CD, pay attention to burn the raw .iso image and not the possibly "mounted" image. If you are using a virtual machine like Oracle Virtualbox, you can mount the .iso image directly. There are going to be a few prompts when the system starts from the CD, but you can press Return to accept the defaults.
    When the Gparted window appears:
    - Select your ext4 root partition, usually /dev/sda1
    - Select the "Resize/Move" button from the toolbar.
    - Enter 18000 into the "Free space following" field and press the Return key.
      Be careful not not change the start of the partition!
    - Click the "Resize/Move" of the dialog and then then the "Apply" toolbar button.
      The process may take several minutes - do not abandon it!
    - Select the new unallocated free space of ~ 18 GB and push the "New" button.
    - Set the file system to "ext3" and label it "oraclexe" and click the "Add" button.
      Be sure to label it oraclexe, otherwise the follow-up instructions will fail.
    - Finally select "Apply from the toolbar to apply the changes.
    - Quit "Gparted", select "Exit" from the desktop and choose "Reboot" to restart the system.
    {code}
    After the system has restarted, open a terminal command shell.
    Login as root:
    {code}
    sudo su -
    {code}
    Backup "fstab" and add the UUID of the partition. The "tr" command remove the quotes:
    {code}
    cp /etc/fstab /etc/fstab_`date +%N`
    uuid=`blkid | grep oraclexe | awk '{print $3}'`
    uuid=`echo $uuid | tr -d '\042'`
    echo $uuid
    echo "$uuid  /u01  ext3  errors=remount-ro 0 1" >> /etc/fstab
    {code}
    The UUID is a unique number and should look similar to:
    {code}
    UUID=d1db753e-b5dd-4a4c-a61e-259c69867b58
    {code}
    Restart the system:
    {code}
    reboot
    {code}
    Verify the success:
    {code}
    df -h /u01
    {code}
    h3. 6.b) Setup External Storage
    If you prefer to setup an external drive to install Oracle XE, beware that it can be a fatal mistake to make an entry in /etc/fstab to automount your external storage device.  An unavailable device in /etc/fstab will prevent a system startup and prompt for appropriate actions at the console.
    The following is an example of how to prepare an external storage device to be used for Oracle 11g, including a script to automatically mount an external drive at system startup without the disadvantages of /etc/fstab. The script will also take into consideration that a device name might shift if you attach additional devices.
    To find out which USB devices are connected:
    {code}
    sudo parted -l
    {code}
    Look for the device that matches your USB storage. For example: /dev/sdb1
    {code}
    Model: USB 2.0 Flash Disk (scsi)
    Disk /dev/sdb: 2064MB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Number  Start   End     Size    File system  Name     Flags
    1      20.5kB  1929MB  1929MB  hfs+         mystick
    {code}
    Initialize the device using ext3 filesystem - this will erase all data. The "-c" option will check for bad blocks (read-only), "-L" is the volume label:
    {code}
    sudo umount /dev/sdb1
    sudo mkfs.ext3 -c -L oraclexe /dev/sdb1
    {code}
    Install the pmount distribution package:
    {code}
    sudo apt-get install pmount
    {code}
    Login as root:
    {code}
    sudo su -
    {code}
    Cut & paste the following into the command prompt (not a text editor):
    {code}
    cat > /etc/init.d/oracle-mount <<-EOF
    #! /bin/sh
    # /etc/init.d/oracle-mount
    VOL_UUID=alphanumeric
    VOL_LABEL=oraclexe
    VOL_SYMLINK=/u01
    mount=/usr/bin/pmount
    uuid2dev() {
       VOL_DEVICE="\`blkid | grep \$VOL_UUID | awk '{print \$1}'\`"
       VOL_DEVICE="\`echo \$VOL_DEVICE | tr -d ':'\`"
       echo \$VOL_DEVICE
    case "\$1" in
      start)
        echo "Starting script /etc/init.d/oracle-mount"
        uuid2dev
        \$mount \$VOL_DEVICE \$VOL_LABEL
        if [ -d /media/\$VOL_LABEL ]; then
           echo "Mount \$VOL_DEVICE success"
           ln -sf /media/\$VOL_LABEL \$VOL_SYMLINK
        else
           echo "Error mouting \$VOL_DEVICE"
        fi
      stop)
        echo "Stopping script /etc/init.d/oracle-mount"
        uuid2dev
        /bin/umount \$VOL_DEVICE 2>/dev/null
        if [ "\`/usr/bin/pmount | /bin/grep \$VOL_DEVICE\`" ]; then
           echo "Error unmounting \$VOL_DEVICE"
        else
           rm -f \$VOL_SYMLINK
        fi
        echo "Usage: /etc/init.d/oracle-u01 {start|stop}"
        exit 1
    esac
    ### BEGIN INIT INFO
    # Provides:          oracle-mount
    # Required-Start:    \$remote_fs \$syslog
    # Required-Stop:     \$remote_fs \$syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Start daemon at boot time
    # Description:       Mount hotplug-usb drive and create symlink
    ### END INIT INFO
    EOF
    {code}
    Install the oracle-mount init script:
    {code}
    chmod 755 /etc/init.d/oracle-mount
    update-rc.d oracle-mount defaults 01 99
    {code}
    Get the UUID of the volume "oraclexe" and update the VOL_UUID in the init script accordingly:
    {code}
    uuid=`blkid | grep oraclexe | awk '{print $3}'`
    echo $uuid
    sed -i "s/^VOL_UUID=.*/VOL_$uuid/g" /etc/init.d/oracle-mount
    {code}
    The UUID of your device will be a unique number, but should be similar to:
    {code}
    UUID="3f5e9963-b328-49f3-b3e8-a3561ae34106"
    {code}
    Logout of root and test the init script:
    {code}
    exit
    sudo /etc/init.d/oracle-mount stop
    ls /u01
    sudo /etc/init.d/oracle-mount start
    ls /u01
    {code}
    Your output should look like:
    {code}
    Stopping script /etc/init.d/oracle-mount
    /dev/sdb1
    ls: cannot access /u01: No such file or directory
    Starting script /etc/init.d/oracle-mount
    /dev/sdb1
    Mount /dev/sdb1 success
    lost+found
    {code}
    h2. 7) ORA-00845: MEMORY_TARGET
    Oracle 11gR2 XE under Ubuntu 11.10 will result in "ORA-00845: MEMORY_TARGET not support on this system" either at Oracle database startup or during the initial installation. Ubuntu 11.10 uses a new version of the "systemd" system and session manager and has migrated away from /dev/shm and other common directories in favor of /run.
    There are several ways how to address the problem. You can either enable /dev/shm shared memory, or change the default memory management of Oracle 11g from AMM (Automatic Memory Management) to ASMM (Automatic Shared Memory Management) as it was in used the previous 10g version. Since AMM is one of the new features of 11g, the following will show you how to make to make AMM work.
    Login as root:
    {code}
    sudo su -
    {code}
    Cut & paste the following into the command prompt (not a text editor):
    {code}
    cat > /etc/init.d/oracle-shm <<-EOF
    #! /bin/sh
    # /etc/init.d/oracle-shm
    case "\$1" in
      start)
        echo "Starting script /etc/init.d/oracle-shm"
        # Run only once at system startup
        if [ -e /dev/shm/.oracle-shm ]; then
          echo "/dev/shm is already mounted, nothing to do"
        else
          rm -f /dev/shm
          mkdir /dev/shm
          mount -B /run/shm /dev/shm
          touch /dev/shm/.oracle-shm
        fi
      stop)
        echo "Stopping script /etc/init.d/oracle-shm"
        echo "Nothing to do"
        echo "Usage: /etc/init.d/oracle-shm {start|stop}"
        exit 1
    esac
    ### BEGIN INIT INFO
    # Provides:          oracle-shm
    # Required-Start:    $remote_fs $syslog
    # Required-Stop:     $remote_fs $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Bind /run/shm to /dev/shm at system startup.
    # Description:       Fix to allow Oracle 11g use AMM.
    ### END INIT INFO
    EOF
    {code}
    Install the oracle-shm init script:
    {code}
    chmod 755 /etc/init.d/oracle-shm
    update-rc.d oracle-shm defaults 01 99
    {code}
    Restart the system:
    {code}
    reboot
    {code}
    Verify the success:
    {code}
    sudo cat /etc/mtab | grep shm
    {code}
    {code}
    none /run/shm tmpfs rw,nosuid,nodev 0 0
    /run/shm /dev/shm none rw,bind 0 0
    {code}
    The upper limit of shared memory under Linux is set to 50 % of the installed RAM by default. If your system has less than 2 GB of RAM installed, there is still a chance to run into ORA-00845 error if your shared memory is used by other software.
    The verify available shared memory, type the following commands:
    {code}
    sudo df -h /run/shm
    {code}
    h2. 8) Installing Oracle 11gR2 Express Edition
    The final release version of Oracle 11gR2 Express Edition can be downloaded for free at http://otn.oracle.com/database/express-edition/downloads. The software should automatically downloaded into the "Downloads" folder of your home directory.
    Enter the following commands to unpack the installer:
    {code}
    cd ~/Downloads
    unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
    rm oracle-xe-11.2.0-1.0.x86_64.rpm.zip
    {code}
    The Debian Linux based package management of Ubuntu is not compatible with the Red Hat package manager. The Oracle installer needs to be converted using the following commands:
    {code}
    cd ~/Downloads/Disk1
    sudo alien --to-deb --scripts oracle-xe-11.2.0-1.0.x86_64.rpm
    (This may take a few minutes)
    rm oracle-xe-11.2.0-1.0.x86_64.rpm
    {code}
    The following needs to be set for compatibility:
    {code}
    sudo ln -s /usr/bin/awk /bin/awk
    sudo mkdir /var/lock/subsys
    {code}
    Ubuntu uses different tools to manage services and system startup scripts. The "chkconfig" tool required by the Oracle installer is not available in Ubuntu. The following will create a file to simulate the "chkconfig" tool.
    Login as root:
    {code}
    sudo su -
    {code}
    Copy & paste the following *directly* into the command prompt to create a file:
    {code}
    cat > /sbin/chkconfig <<-EOF
    #!/bin/bash
    # Oracle 11gR2 XE installer chkconfig hack for Debian based Linux (by dude)
    # Only run once.
    echo "Simulating /sbin/chkconfig..."
    if [[ ! \`tail -n1 /etc/init.d/oracle-xe | grep INIT\` ]]; then
    cat >> /etc/init.d/oracle-xe <<-EOM
    ### BEGIN INIT INFO
    # Provides:                  OracleXE
    # Required-Start:        \\\$remote_fs \\\$syslog
    # Required-Stop:        \\\$remote_fs \\\$syslog
    # Default-Start:            2 3 4 5
    # Default-Stop:            0 1 6
    # Short-Description:   Oracle 11g Express Edition
    ### END INIT INFO
    EOM
    fi
    update-rc.d oracle-xe defaults 80 01
    EOF
    {code}
    Exit root:
    {code}
    exit
    {code}
    Set execute privileges:
    {code}
    sudo chmod 755 /sbin/chkconfig
    {code}
    Install Oracle 11gR2 Express Edition entering the following commands:
    {code}
    cd ~/Downloads/Disk1
    sudo dpkg --install ./oracle-xe_11.2.0-2_amd64.deb
    (This may take a couple of minutes)
    {code}
    Run the configuration script to create (clone) the database and follow the screen. Accept the default answers, including "y" to startup the database automatically, or modify as required.
    {code}
    sudo /etc/init.d/oracle-xe configure
    (This can take a few minutes - the installation completed successfully.)
    {code}
    To verify success, the procedure should end showing:
    {code}
    Starting Oracle Net Listener...Done
    Configuring database...Done
    Starting Oracle Database 11g Express Edition instance...Done
    Installation completed successfully.
    {code}
    Set a password for the Oracle account:
    {code}
    sudo passwd oracle
    {code}
    h2. 9) Post-Installation
    In order to use sqlplus and other tools, the Oracle account requires specific environment variables. The following will set these variables automatically at every Oracle login:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Copy the default account skeleton files and add the Oracle env script to .profile:
    {code}
    cp /etc/skel/.bash_logout ./
    cp /etc/skel/.bashrc ./
    cp /etc/skel/.profile ./
    echo "" >>./.profile
    echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >>./.profile
    {code}
    By default, the Oracle Database XE graphical user interface is only available at the local server, but not remotely. The following will enable remote logins:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and execute the following:
    {code}
    sqlplus / as sysdba
    SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
    exit
    {code}
    See http://download.oracle.com/docs/cd/E17781_01/admin.112/e18585/toc.htm for more information.
    h3. a) Unity desktop configurations
    The Oracle XE menu under the previous Gnome Classic desktop shows several useful scripts to backup the database, start and stop the database, etc. Under the Unity based desktop this menu is not available. You can either switch to the Gnome Classic desktop as outlined in chapter 2, or perform the following steps to modify and copy the scripts as outlined below. The start and stop database scripts will also be modified to perform a progress feedback.
    Login as user root:
    {code}
    sudo su -
    {code}
    Convert desktop files:
    {code}
    cd /usr/share/applications
    sed -i 's/Categories.*/Categories=Database;Office;Development;/g' oraclexe*
    sed -i 's/MultipleArgs/X-MultipleArgs/g' oraclexe*
    sed -i 's/MimeType.*/MimeType=application\/x-database/g' oraclexe*
    sed -i 's/.png//g' oraclexe*
    sed -i 's/Terminal=false/Terminal=true/g' oraclexe-startdb.desktop
    sed -i 's/Terminal=false/Terminal=true/g' oraclexe-stopdb.desktop
    {code}
    Exit root:
    {code}
    exit
    {code}
    Login as user Oracle:
    {code}
    su - oracle
    {code}
    Modify database start and stop scripts:
    {code}
    cd /u01/app/oracle/product/11.2.0/xe/config/scripts
    cp startdb.sh start.sh_orig
    cp stopdb.sh stopdb.sh_orig
    sed -i 's/>.*//g' startdb.sh
    sed -i 's/>.*//g' stopdb.sh
    {code}
    You will need SYSDBA privileges and set Oracle environment variables in order to use your regular user account.
    Login to your regular user account:
    {code}
    su - dude
    {code}
    Enter the folowing command:
    {code}
    sudo usermod -a -G dba dude
    {code}
    Then update your profile to automatically set the necessary Oracle environment variables:
    {code}
    echo "" >>./.profile
    echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >>./.profile
    {code}
    Update your Desktop folder to contain useful Oracle XE scripts:
    {code}
    cp /usr/share/applications/oraclexe* ~/Desktop
    chmod 750 ~/Desktop/oraclexe*
    {code}
    To verify success re-login and try "sqlplus":
    {code}
    su - oracle
    sqlplus / as sysdba
    {code}
    h2. 10) Tips and Troubleshooting
    h3. 10. a) Port 1521 appears to be in use by another application
    Error: Port 1521 appears to be in use by another application. Specify a different port.This error happens after a previously unsuccessful configuration attempt using /etc/init.d/oracle-xe configure script. The script was able to start the Listener process, but most likely failed to continue  to clone the database, e.g. ORA-00845. The following should correct the problem:
    Determine the oracle listener process that is already running:
    {code}
    $ ps -ef | grep oracle
    {code}
    Your output should be similar to:
    {code}
    oracle   19789     1  0 19:46 ?        00:00:00 /u01/app/oracle/product/11.2.0/xe/bin/tnslsnr
    {code}
    Then kill the process, using the appropriate process id, for instance:
    {code}
    $ sudo kill -9 19789
    {code}
    h3. 10.b) cannot touch `/var/lock/subsys/listener': No such file or directory
    Starting Oracle Net Listener...touch: cannot touch `/var/lock/subsys/listener': No such file or directoryThis error occurs when you run /etc/init.d/oracle-xe configure, but failed the preinstallation step to create the /var//lock/subsys directory as outlined in chapter 8.
    h3. 10.c) ORA-00845: MEMORY_TARGET
    ORA-00845: MEMORY_TARGET not supported on this system See chapter 7 to enable /dev/shm and verify free space available in /run/shm
    h3. 10.d) Apex ADMIN password
    According to the Oracle documentation, the password for the INTERNAL and ADMIN Oracle Application Express user accounts is initially the same as the SYS and SYSTEM administrative user accounts. Well, I tried several times without success. To reset the Apex Admin password:
    Login as user oracle:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and type the following:
    {code}
    sqlplus / as sysdba
    {code}
    At the SQL prompt, type the following to be prompted to change the password:
    {code}
    SQL> @?/apex/apxxepwd.sql
    exit
    {code}
    When done, open your browser and go to http://127.0.0.1:8080/apex
    Workspace: Internal
    Username: ADMIN
    Password: password you set with apxxepwd.sql
    I will prompt you to reset the password:
    old password: password you set with apxxepwd.sql
    new password: final_password
    You can also login as the Apex Admin using http://127.0.0.1:8080/apex/apex_admin
    h3. 10.e) SYS and SYSTEM password
    Use the following commands to reset the SYS and SYSTEM passwords if necessary:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and type the following at the SQL prompt:
    {code}
    sqlplus / as sysdba
    SQL> alter user sys identified by "password" account unlock;
    SQL> alter user system identified by "password" account unlock;
    SQL> exit
    {code}
    h3. 10.f) Uninstall Oracle 11g XE
    The following will completely uninstall and remove Oracle 11g XE:
    Open a terminal seesion and login as user root:
    {code}
    sudo su -
    {code}
    Enter the following:
    {code}
    /etc/init.d/oracle-xe stop
    dpkg --purge oracle-xe
    rm -r /u01/app
    rm /etc/default/oracle-xe
    update-rc.d -f oracle-xe remove
    update-rc.d -f oracle-mount remove
    update-rc.d -f oracle-shm remove
    {code}
    h3. 10.g) Reconfigure Oracle 11g XE
    Type the following commands in a terminal window:
    {code}
    sudo /etc/init.d/oracle-xe stop
    sudo rm /etc/default/oracle-xe
    sudo /etc/init.d/oracle-xe configure
    {code}
    h3. 10.h) Gnome Classic desktop
    Ubuntu 11 moved from the Gnome Classic desktop to Unity and removed the "Ubuntu Classic" login option. Unity was designed to make more efficient use of space given a limited screen size and touch screens. If you prefer to use the Gnome Classic desktop, enter the following into a terminal window:
    {code}
    sudo apt-get install gnome-panel
    {code}
    To log into the Gnome Classic desktop, select the "Gearwheel" at the login screen and select "Gnome Classic".
    h3. 10.i) Unix vi cursor keys
    The instructions in this tutorial do not require the use of any text editor. However, if you would like use the backspace and cursor keys in the "vi-editor", the following needs to be installed:
    {code}
    sudo apt-get install vim
    {code}
    h3. 10.j) Backup Database
    In order to perform an online database backup using the supplied "Backup Database" script, the database needs to run in Archive-Log mode. This can be setup using the following commands:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and type the following:
    {code}
    sqlplus / as sysdba
    SQL> shutdown immediate
    SQL> startup mount
    SQL> alter database archivelog;
    SQL> alter database open;
    SQL> exit
    {code}
    h2. 11) History
    Version: A, 24-Oct-2011
    - first release
    Version: B, 25-Oct-2011
    - reduced instructions.
    - corrected errors in 6a and 8.
    - new strategy addressing ORA-00845 error.
    - rework of chapter 10.
    Version: C, 30-Nov-2011
    - corrected typo in 6a
    - new procedures in 9a.
    - added progress feedback to database scripts.
    Version D, 14-Jan-2012
    - corrected presentation errors.
    - reorganized instructions.
    h3. 12) References
    http://download.oracle.com/docs/cd/E17781_01/install.112/e18802/toc.htm
    http://askubuntu.com/questions/57297/why-has-var-run-been-migrated-to-run
    http://lwn.net/Articles/436012/
    https://forums.oracle.com/forums/thread.jspa?threadID=2300750&tstart=0
    Kind regards and best of luck!
    Dude.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    Excellent Blog. Thank You
    Small clarification on Step **6) Oracle Home Directory, ...a) Resize the Root Partition**
    Ubuntu 11.10 has Gparted available as a Ubuntu software download, DONT use that while trying the above step, instead download the ISO file from http://sourceforge.net/projects/gparted/files/gparted-live-stable/ gparted-live-0.12.0-5.iso (124.6 MB)
    Burn that ISO file on a Blank DVD, reboot the Ubuntu , during startup select Boot from DVD Option if not already selected. this will take to Boot Menu Options of Gparted Live then select the first menu option, and this allows to do further action such as Re-sizing .
    and once you have chosen and executed step a) . do NOT run step b) also that is "Setup External Storage"
    I hope this minor clarification can avoid some confusion
    Regards
    Madhusudhan Rao
    Edited by: MadhusudhanRao on Mar 24, 2012 11:30 PM

  • Share my experiences with the B520 Model

    I have purchased the Lenovo All-In-One desktop computer model B520 on Nov 15th. It arrived in my office on Nov 21st.  It’s been a month now after using it, I would like to share my thoughts about it.
    Pros:
    Saves space, this is the biggest advantage of AIO desktop; this is the primary reason that why I have switched.  Computers with a case and a separated monitor is a big issue for me. I never liked these cables for mouse, keyboard, speakers, …etc. it causes a huge mess under the desk. Now, with the All-in-one style, everything is simplified.  The only cable I need for this B520 Lenovo desktop is for the power source.  It’s designed with different wireless technologies. Mouse and Keyboard are connected through Bluetooth; The system has build-in with the latest 802.11b.g.n WiFi wireless technology.  It also has the enhanced integrated 5.0 speakers system that supports SRS Premium Sound Audio.
    High Performance,  out of all the All-In-One desktop models out there in the market, this machine has the highest hardware specifications. Quad Core Intel 2nd Generation CPU i72600 with Hyper Thread Technology.  This is a really powerful CPU, it gives its best performance when it comes with Video Rendering and image processing.  Word processing and gaming is a piece of cake for the it to handle. I do a lot of video editing so I will only chose this model of CPU.
    The B520 model also comes wit a Nvidia Geforce GT555M.  This is a middle class close to a high end video card.  It handles most of the 3D games in an acceptable setting, but will not be able to run games like BF3 or Crysis kind of games in high settings.  This machine is not for serious gamers, because All-in-one desktops has the performance bottleneck with the video card. Computer manufacturing have to keep down the power it consumes to prevent the machine from over heating.  High end video cards all have a very high demand for powers, at same time produces huge amount of heat.  This is why there are a lot of people start to customize their own computer cases with water cooling system. It is more sophisticated and comes with a lot of trouble.  If you want to have something easy, well organized, and just simply works, go for All-In-One.  You will love it.
    The Lenovo B520 comes with a Touch Screen, which I don’t usually use that often. If there are kids in the family, it will be a fun toy for them to play with. What I like better, is the Bluetooth mouse. The unique part about this mouse is that it has a build in gravitational sensor, means, this mouse is functional in the middle of nowhere, even hanging in the air.  You can imagine using it like a Wii game controller.Just move the mouse and wave it in the air and you will see the cursor on the screen goes where ever you are pointing. How accurate is it? very accurate!! it’s is more sensitive and feels better than using a Wii controller.  Lenovo has pre-install some games that can be played interactively with the mouse. The screen is 23″, so it would be a fun experience. I don’t have any kids in the house, so I uninstalled them all to save some disk spaces and speed up the system a little bit.
    The keyboard and mouse are both connected by Bluetooth; I also noticed that every time when I start the computer, it takes about 2-3 seconds for them to become effective. I assume Lenovo has designed it with a “sleep feature” for this two devices; it helps to save battery and extend the replacement cycle.
    The computer also comes with a 3D glasses. The touch screen has a very high refreshing rate(120Mhz) which is better for the eyes. The screen works interactively with the 3D glasses. When the computer is playing a movie in 3D format, when I wear the 3D glasses and facing the screen, it automatically turns on and I am in 3D mode!!! It supports a lot of 3D games too!!  The feeling in a racing car 3D game is UNBELIEVABLY REAL!!  I love it so much!  It’s a TOTALLY NEW LEVEL of gaming experience!
    Also, Lenovo has designed 4 slots for memory modules.  they have installed 8GB onto two slots and there are another 2 slots available to use.  This is very useful for people like me demands for more rams.  It also provides four USB 2.0 and two USB 3.0 port; more than any other All-in-one desktops on the market. The 5 in-one card reader is convenient for uploading photos from cameras.  two HDMI ports, I can also connect my PS3 or Xbox360 to it if I want to use it’s 3D touch screen. It has a building TV tuner, so watching TV on it is another feature.
    Cons:
    Even the computer is very well designed, as a high end user I found there are still a couple places that Lenovo can improve.
    1. Lenovo has researched and developed this RapidDrive technology; I see this is an option on the Spec-sheet for the product, but I never had the chance to upgrade it.  I demand for a high disk performance; I was a little disappointed when I found out that I wasn’t able to install another SSD high performance disk into the computer. I had to take out the 2TB standard disk drive and replace it with the SSD. It would be really nice if I can have the high performance SSD installed as the system drive, and the HD installed as the storage drive.  The RapidDrive technology may become failing out now, because it was from those years that SSD weren’t popularly used.  Compare to the present, SSD is getting more and more popular, the SSD is improving it’s performance and lowering it’s cost.  In the next one or two years, the RapidDrive technology will likely become a history.
    2. I have opened the B520 model to see the inside modules. I see there are still plenty of spaces that Lenovo engineer can use to expand the upgrade capacities. I can use some simple tools to modify the inside body a little bit to fit another hard drive, but it stopped me from doing it because there is not another power cord connector. Those extra mSata connectors are sitting there and watching me could do anything about it;  = (
    3. Lenovo technical support did not have a most updated tech sheet for their system.  Again, I am a tech kind of guy. I was looking for a manual to better understanding the B520 motherboard.(so I can modify it and add some extra hardware to it)  I have called their technical support, talked to people, went through their online data base,  they weren’t able to provide me this manual.  The lastest information they have is for the previous model. The B520 Model I have a the newest I believe. Lenovo should keep up with their technical support, and be prepare for experienced users.
    Conclusion:
    I am satisfied with it. I feel I have made a great purchase.  Would be nice it I can install an additional SSD in there.  Would nice if they can put a high end video card in there.  Good for home offices, and home entertainments. Not recommended for hardcore gamer.
    Price: 4.5 / 5
    Performance: 4.5 / 5
    Exterior Design: 5 / 5
    Interior Design: 3.5 / 5
    Customer Service: 4.5 / 5
    Time from order to receive the product: QUICKLY
    Other thoughts:
    When I was doing my research on All-In-One, here are the reasons that why I have chosen Lenovo:
    1.Sony has a well designed for their product, but the price is high. Most importantly, the video card they have is Nvidia Geforce 540M GT, and it only supports 8GB of ram, not 16 GB.
    2. Toshiba has terrible customer services for technical support. I had a very bad experience with them. I believe they have out sourced it to India base companies.  When the computer is out of warranty after 1 year, they charge a $35(or $30)dollars troubleshooting fee.  I think this is ridiculous to charge the consumer to talk over the phone to find what is the problem with their product.
    3. Dell has better customer service than Toshiba; They do not charge for talking and providing the technical support after warranty, but when it comes with parts replacement, that is something we have to pay which is understandable.  However, one thing I really don’t like Dell computers is that they install a LOT of junks onto your machine when you buy it.  It’s fully loaded with all these third party softwares who pays Dell for more users.  It not only slows down the system, but also generate a lot of garbage uses a lot of disk space.  I will reconsider to buy Dell if they give me a clean & Junk-free windows.
    4. iMac is also a good choice because it’s well designed too. but I did not chose it because it has very limited expansion ports and they charge insanely more for hard-wares upgrade.  They have extreme control over their product from customer modification. They don’t even allow the consumer to replace the hard drive themselves.
    5. HP also has wonderful All-In-Ones, but their hardware specs seems weak. Never dealt with HP customer service before, so I will not say anything about their customer services. Hopefully it’s better than Toshiba.  = )
    also been posted on my personal blog

    Thank you for replying.
    Where I can buy a seperate RapidDrive?
    I couldn't find it on the marcket, or on shop.lenovo.com  /  http://www.lenovospareparts.com/
    With the mSata power splitter, there is a problem.
    The data portion and the power portion shares the same connector I belive. I have thought of it but don't know how to make it possible.  any suggestions?
    the only thing I can find is this :  http://www.microcenter.com/single_product_results.phtml?product_id=0317944   
    but I still need to convert the power connector because it's 4 pin molex;. I guess it should work if I use another 6" Molex to SATA Power Cable Adapter.  
    Also, I couldn't find which is the SATA 3.0 and Which is the SATA 6.0 connector.  SSD will have a huge difference in performace with a SATA 6.0 connector.   This is confusing because on the B520 Spec sheet it stated both.  I was looking for it's manual to identify, but no one can provides it. Last time when I called, they forwarded my call to Intel.  LOL!  I was like, **bleep**?  It's a board you used and you dont have a manual for it?
    Anyways,  
    Thanks  again!

  • How Do I determine which model ipad I need?

    I initially thought buying a baic 16GB Ipad with the 9.7" screen would be simple and inexpensive. But, the more I have looked, the more confused I am. I am so technically challenged that I do not understand the "specs", let alone how to use them. I have a basic nebook that I only use for emails, chatting, shopping and research. And that is because I do not know how to use all the features available. And I love my Kindle 3G Wi-Fi e-reader but it is not color and has the external  typing key pad, which has been ideal for me .  I do not even know how to text on my cellphone so I had the service removed since I did not use it. And I only use the Kindle for reading but was glad got the 3G Model but their is no additional monthly usage fee.
    But, now that I have been looking at the Apple ipads, I do not know if their  3/4G capabiliy service is worth the extra cost, as well as the high monthly serive fees? I am hoping someone can better explain why it cost so much more and just what the benefits will mean to me? Also, there any many benefits and added features but I do not believe I will ever learn t use many of them. And could someone please explain the advantage of "Bluetooth" and just what it means? And what other items or features will cost extra per month to use? Also, are none of the printer compatable? Is there no accessory to allow you to use a wireless printers? This was one of the most disappointing thing I have learned about the tablets. Aso, how is the quality of sound system?  Mine on the netbook is very poor and even with the volume on high, it is difficult to get good clear speach. So, I never watch moveis on my computer. And I am afraid it may be the same problem with the iPads? But, maybe with an external speaker or earbuds, it could enhance the sound? If so, at least I could listen to music.
    In the beginning I was not concenred which model but now after reading more about the latest Apple, I feel the new easy to read screen is something I need. So, I hope someone can help me select the right model without my buying much more than I will ever need or use. I look foward any assistance you great tech savvy users can provide. I believe it always helps to be an informed buyer. So, trying to do my homework to prevent buyers remorse.
    If it is permissable, you may email me with your information and suggestions on just what features I need to look for.

    Varjak paw:
    I don't think you can purchase the 3/4+ wireless service unless you pay the extra for one that has the capabilities. So, if we are not certain we will need it, it is a tough decision. It it has the capablities, you are not required to purchase a monthly contract. You can just use as needed.
    I do not know why this has become such a major decision for me but the more I hear, the more confused I am. The problem is it would be nice to have the special wireles service available if needed but I think it may be more beneficial to me to pay the extra 100.00 and get the 32 GB instead of the 16? But, my granddaughter says I will not need that much.
    My initial plan was simply to purchse the 16GB wif-fi and keep it simple. But, after learning the advantages of the Newst model and the improved screen, I thought I should get it since I have vision problems. Another problem is these things are outdated before we can decide which one to get. And some have suggested it will be more diffucult to get parts and have them repaired with an older model. Howeverm from what I have seen with these new electronic items, they are dispoable. Usually, if something does go wrong, it cost more to repair than to replace them.
    I am just experienceing this with my Kindle 3G/Wi-Fi. It is only a couple of months out of warranty but it is now freezing up. Also, it is loosing my place, and skipping pages and even paragraphs. It was working perfectly until about a week ago and of course, no one can help. You have to return it for them to check it and let you know what the problem could be and If it can be repaired. This is very disapointing to me since I was just planning to buy the Ipad. And now, I may have to replace the Kindle, which I wanted to keep for just reading. I have so many books on it and they are all in order and organized. So, this has put damper on what to do about the Ipad. If I were sure I would like to read on it as well as I do the Kindle, I would just the the Ipad and not get another Kindle. But, I will need to see what the problem is first. I really enjoy the Kindle and wanted to keep it just for my books. It is so fast and convenient to use. At least for me since I like the typing pad on the outside rather then the touch pad. But, I suppose I will learn how to use the new one? I am just so illierate when it comes to using any electronics. I cannot use a remote control,.:) I only use my computer for email, chatting and surfing since I do not know how to use many of the functions and applications that are available on it. I do not even have text on my cell phone. I have kept my electronic to a minumim. But, I thought I might enjoy the Appple Ipad and could learn to use it online so I would not have to have the computer on all the time?  But, I cannot beleive how expensive it is compared to a netbook or laptop when they will do much more than the Tablet. I suppose the Ipad is a luxury for those who can afford all the lasted new technical items available.
    I did try a Pandigital Tablet before I bought the Kindle and did not like it at all. So, I returned it and got the Kindle and was so pleased that I could use it so easily. And I did not need the color screen, I just hope the Apple Tablet will be easier to use than the Pandigital or I am afraid, I will be to hard for me to learn to use it and be able to  take full advantage of of getting around on the internet, I had a problem with the ohter touch screen scrolling back up before I had finished typing in all the information I needed. And I had to download from Barnes and Nobels and there selection was not nearly as good as the Kindle and they were much higher.
    So if anyone is patent enough to read all this and can understand what I need and could provide your  expert advice, suggestion and opinions, I would love to hear from you and any or all the issue in which I need help.
    Thanks - Sunny in SC

  • HOWTO: Low DPC latencies ( 100 us) on bootcamped Macbooks (Pro)

    Here is a small HOWTO for getting the lowest possible DPC latencies (<100 us) on bootcamped Macbooks Pro (late 2008):
    Disclaimer: I did all tests on my late 2008 Macbook Pro Unibody 2.8 GHz model with NVidia chipset and graphic. Most of the following suggestions should apply to standard Macbook models and likely older generation as well.
    First of all Intel Speedstep can lead to dropouts and higher DPC latencies on small load! Unfortunately all tools that are supposed to manually switch Speedstep off don't seem to run on the late Macbooks (Pro) while on OS X you can use "Coolbook".
    Your only way to make sure your processor is clocked high enough and not dynamically switching is to put up a constant load (like running your DAW pretty hot or running Prime95 at "Idle/Lowest" process Priority in the background). I will keep investigating if I can find a tool to switch Speedstep off.
    Most importantly (to get rid of really bad DPC latency spikes):
    Kill the process "KBDMGR.EXE"!
    That's Apple's driver for controlling brightness and keyboard lighting via the function keys and setting tap options for the trackpad. It seems to have broken multithreading!
    You can also change the CPU affinity of KBDMGR.EXE to CPU1 (not CPU0!) which will help decreasing DPC Latencies alot, but there will still be Audio dropouts.
    Here's a small toolkit I put together that allows you to conviniently enable/disable Apple's "Boot Camp" tray application (KBDMGR.EXE) via an icon link and/or keyboard shortcut. Optionally it will switch the function of the F-Keys automatically for you depending on whether Boot Camp is loaded or not.
    Furthermore it automatically turns Boot Camp's CPU priority to "Idle" and CPU affinity to CPU1 in order to turn down the bug induced DPC Latencies and prevent dropouts with Windows sounds and Media Player playback. Professional Audio users will find that only turning off Boot Camp will allow low audio latency usage. Installation instructions are included in the README.TXT for your convinience.
    Boot CampED download page
    Direct Download:
    Boot CampED.zip - 3.3 kb
    Turn off the Broadcom 802.11N WLAN driver via Device-Manager or update to the latest drivers via Microsoft Update Catalog.
    Like on OS X the Airport module can lead to audio dropouts. The DPC Latencies produced by the Broadcom driver are less regular than the KBDMGR thing, alot higher in value. Best thing is to try for your own needs.
    Update:Meanwhile a new Broadcom drivers was published via Microsoft's Update Catalog named "Broadcom - Network - Broadcom 4322AG 802.11a/b/g/draft-n Wi-Fi Adapter " (4322 is the chip used). This one comes with both low DPC latencies and finally the ability to use the full rate upto 300 mbit/s. Go get it! For safety you might still want to turn WLAN off during critical audio work though.
    Change the graphic-card driver to "Standard VGA Driver" via Device-Manager or use RIVATUNER to enforce a fixed clock-rate and performance mode.
    Update:The dynamic clock-rate switching happening with NVidia drivers in order to save power and keep temperatures low leads to extreme DPC spikes for each switch and constantly high DPC latencies when it settles in low performance 2D mode. RIVATUNER's "Enforce Performance Mode" option can be used to set the card to a fixed clock-rate. I recommend using "Low Power 3D" for audio work.
    User of XP might think that they don't need this, but be aware that on XP the NVidia driver keeps running at highest clock-rates in "Performance 3D Mode" all the time. Via RIVATUNER you can switch to "Low Power 3D".
    Turn off the ACPI compliant Battery driver via Device-Manager
    This driver polls the battery for its current load status and produces a small, single, short spike exactly every 15 seconds. In my own tests I found that it doesn't seem to affect low latency audio performance. Furthermore turning it off will remove monitoring of your current battery status. But if you are running on power-chord anyway and want to make absolutely sure you can turn it off.
    All other devices don't add much if anything to DPC latencies, but can savely be turned off if you don't need them (like Nvidia LAN, Bluetooth, Onboard High Definition Audio).
    Attention: Removing the Battery while the power chord is connected results in permanently reduced CPU clock (downto the lowest clock setting possible). According to Apple this is done to prevent overloading the power-supply during heavy load as it needs the assistance of the battery from time to time.

    I'd like to underline that these are workaround. Now that the Broadcom drivers are fixed it is up to Apple to fix KBDMGR and to get the NVidia drivers fixed!
    Furthermore it seems as if only Vista 32-bit and OS X are heavily affected by Intel Speedstep, Vista 64-bit and Windows 7 (32/64) work alot better in this regard. XP is a mixed bag.
    Here are some screenshots to prove that the workarounds do help:
    DPC Latency before applying the workarounds:
    DPC Latency Vista 64-bit (Idle, Speedstep enabled) after applying the workarounds:
    DPC Latency Windows 7 64-bit (Idle: Speedstep enabled) after applying the workarounds:
    As you can see Vista's DPCs run well below 100 us once everything is optimized, Windows 7 is a bit worse, XP is even better. But practically you get the same results when using all three for professional Audio work.
    Message was edited by: T1mur

  • Windows Deployment Services 2012 - Driver Group filter by Model value not working - Drivers are not installed!

    Hi,
    I'm using Windows Deployment Services 2012 to deploy Windows 7 Pro x64 driverless images to different hardware models (drivers are injected using WDS). I already have organized the drivers in driver groups per
    hardware model. I'm experiencing driver conflicts so I decided to start using driver group filters to make sure that the driver groups are available only available for the corresponding hardware model.
    To get the correct values for the filters i have used the following method: (as described in this article: http:// technet.microsoft.com/en-us/library/dd759191.aspx)
    so I checked msinfo32.exe
    (System Manufacturer: Dell Inc.     System Model: OptiPlex 790)
    and set these values in the driver group filter:
    Then fired up WDS using PXE booting on my OptiPlex but when finished: No drivers are installed! I investigated further and found on forums to use the following commands (which return the same values btw):
    wmic bios get manufacturer      
    (returns: Dell Inc.)
    wmic computersystem get manufacturer
    (returns: Dell Inc.)
    wmic computersystem get model
    (returns: OptiPlex 790)
    Values are the same so no problem there.
    Then I checked the output of the following commands: 
    wmic bios get model (returned: error, invalid query)
    wmic bios get /all (returned: all kind of information but no model value)
    When I remove the value "OptiPlex 790" from the filter list the drivers are installed correctly. So this has to be some problem with the Model value.
    Could someone please help me?
    As a workaround I now disable all the driver groups exept the one that I need for the hardware. But as more new hardware models are added this is a lot of work to do everytime.
    Extra info:
    I'm using a WINPE 4.0 image (windows 7 media boot.wim file). 6.1.7.601
    Windows Server version: Windows Server 2012 - version 6.2 (Build 9200) - All Windows updates are installed
    Windows Deployment Services version 6.2.9200.16384
    Having this problem on multiple systems
    Questions:
    - Does WDS/WinPE uses only the Bios values for determining system info? (then this problem could be with Dell in this example, because no model value is available)
    - Is this the correct way to set up driver group filters? (then this is a problem with MS. Does anyone have solution??)
    Thank you for your answers & help!

    Hi Microsoft,
    I still have no answer to my Questions.
    Thank you for your answers & help!

  • HEADER FOOTER HOWTO

    Hi guys,
    i need simply to have header / footer as they are on my office model.
    Howto? I was thinking that only with xmlp desktop version i was unable to see footer /header.
    Instead i get this: the header and the footer are displayed only on the first page.
    On the page with other records, they doesn't diplay at all.
    What kind of xmlp tag i have to use to display header and footer on every pages?
    By the way i've read as well Tim Blog about subtemplates.
    Do i have to use subtemplates to achieve this simple task?
    I have read as well about microsoft office sec patch, but i think this is not make case, as the i can see header and footer once.
    thanx a lot
    Message was edited by:
    Marcello Nocito

    Hi Marcello,
    I think you want to display the footer & header in all the pages, but the output gives only in first page ?
    am i right ?
    go to File-> Page setup -> layout
    check if the option over there is Different first page option
    if you have selected something like this you will get only on first page.
    It must be some setting issue.
    Hope this helps

Maybe you are looking for

  • Link SAP Script with IC WinClient

    Hey Guys I have created a SAP script, but I am having hard time linking it with the Interaction Center Winclient. What I mean is that,  when the call is received, how the agent will read the script. Any help would be really appreciated. Regards SAP C

  • Adobe slow to open PDF with digital signature

    Hi, We have recently added a digital signature to our PDF reports for security. Adobe takes an age to open the PDF on some PC's but instant on others. Can anyone offer any assistance to this problem. Thanks.

  • Virtual PC 7.02 - Windows XP vs. Windows 2000

    I'm new to Virtual PC for Mac and have noticed a huge difference between running Windows 2000 vs. Windows XP in it. Windows XP runs a lot slower, almost to the point of uselessness. I have the memory for both allocated up to 512MB. Does XP just not w

  • Overloaded function question

    I have the following two classes: public class AClass implements Serializable; public class RAClass extends AClass; I have a remote EJB interface named Alarm where two methods in the remote interface look like this: public long setAlarm(String usr, S

  • Error on display page under VPN

    i have migrated some application apex from version 2.2.0.00.32 to 3.1.1.00.09 into another server. In lan there's no problem. If i try to access from our VPN (Juniper) in the browser appear the login page but when i try to login the browser give me t